
sparkmentor
Adjusted the whitespace and formatting of the empty-state message within the AI spend report for better readability. 
Updated the pricing planner to clearly indicate when the target margin is reachable even at the lowest evaluated price point. This provides better clarity for users when they have already achieved or exceeded their desired profitability goals.
The AI spend dashboard now explicitly includes the Free plan in the "What 1 credit really buys" section, displaying the monthly 300-credit allowance and the 1,000-credit signup bonus. Previously, this section only showed top-up and paid plan pricing; by adding the Free tier and grouping prices into a consistent two-column layout, the price list is now much clearer and more comprehensive.
We've updated the documentation covering the progress, key learnings, and upcoming tasks for the AI cost tracking system. This covers the multi-tenant efforts including per-student usage metering, SparkMentis integration, and superadmin controls to better manage and monitor AI expenditures. 
We've implemented a comprehensive AI spending and usage analytics system. By tracking AI usage at the student, feature, and daily level, we can now calculate precise margins, voice minutes, and cost-per-credit metrics, providing transparency into what each credit actually buys. This includes a new admin dashboard for profit analysis and backfilling tools for historical data accuracy. 
We have refactored the tutor prompt to favor concise, 3-6 sentence answers by default, significantly reducing token consumption and costs for general queries. Long-form explanations are now reserved for explicit user requests or complex problem-solving scenarios, ensuring a more focused learning experience. To support this change, we introduced a new offline self-check script to validate our AI usage metering against mocked model responses. 
Browsers, particularly on iOS/Safari, often block unmuted autoplay if video streams are delayed due to network or handshake latency. To fix this, we now prime the video element with an initial play call during user interaction and handle cases where audio is still blocked by falling back to muted playback with a user-friendly 'Tap to hear' hint. This ensures the avatar displays correctly even when asynchronous WebRTC track loading causes the autoplay grace period to expire. 
This massive update implements a comprehensive rebalancing of credits, chat costs, and voice usage based on findings from a recent system audit. We've optimized chat costs by introducing token caps and transparent per-reply pricing, shifted illustrations to a deliberate, non-automatic opt-in model, and implemented new monthly voice usage caps for different plan tiers. These changes improve cost predictability and user clarity across the platform. 
Recent growth in the School module's schema and codebase caused the backend build to exceed the previous 2GB heap limit. We have increased the memory allocation to 4GB and added a 4GB swapfile on the server as a safety net to prevent future OOM crashes during deployment. 
This release introduces a centralized School hub that integrates Google Classroom and SparkMentis into a single, cohesive experience. The update includes a comprehensive suite of learning tools, including a student dashboard, course management, automated study planning, and intelligent reminders, all backed by a new shared School data model. We've also hardened security by implementing PKCE for Google OAuth, minimizing API scopes, and adding robust admin controls. 
This update integrates the code-review-graph tool with updated configurations in .mcp.json and refined documentation in CLAUDE.md. Additionally, it improves mobile asset management with a new source in skills-lock.json and clearer guidelines in PLAY_STORE_GUIDE.md for screenshot preparation. These changes ensure better tooling support and smoother workflows for documentation and asset handling. 
We have officially documented the design and builder briefs for our school integrations, providing clear context for these complex features. This update helps align our development approach for upcoming school-focused tools. 
This update addresses CSS layout inconsistencies within the Favorites view by ensuring the search capsule maintains a consistent height and enabling Favorites cards to expand to fit multi-line titles. Additionally, we refactored the page scroller to serve as the containing block for absolute positioning, which prevents screen-reader elements and live regions from causing unintended document overflow. These changes ensure a cleaner, more robust UI experience. 
This massive release introduces a comprehensive overhaul to system reliability, including refined deployment processes and robust error handling. We've significantly upgraded the learning loop with a data-driven mastery system and improved Spaced Repetition algorithms to ensure more effective study sessions. Additionally, the platform is now fully compliant with Android Play Store policies by removing in-app purchase paths and updating our service claims.
Updated assetlinks.json to include the Google Play App Signing key fingerprint alongside the existing upload key. This ensures that apps installed via the Play Store correctly verify with the Trusted Web Activity (TWA), preventing the browser UI from appearing in production builds. 
To comply with Google Play Store's requirements for automatic protection (Play Integrity), the project's minimum supported Android API level has been updated from 21 (Android 5.0) to 24 (Android 7.0). This change prevents upload rejections when the integrity protection feature is enabled in the Play Console. Corresponding documentation in PLAY_STORE_GUIDE.md has also been updated to reflect the new minimum requirement. 
To prevent sensitive assessment data from being exposed, we've updated the SparkMentis service to strip 'answer', 'correctAnswer', and 'isCorrect' fields from all API responses before they are synced to the database. This ensures that answer keys are never stored in our systems, even for older client builds. Any existing data containing these fields has already been securely cleaned. 
Added essential public pages for Privacy, Terms, and Account Deletion, along with a dedicated Android Beta opt-in page. The update also includes comprehensive documentation and graphical assets for the upcoming Android Play Store release. These changes ensure compliance and streamline the onboarding process for new and mobile users. 
We have completely redesigned the mistake revision sheet to offer a more structured and educational experience, including real page previews, interactive diagrams, and 'Try it' practice questions. New functionality allows users to customize their sheets—choosing subjects, formats, and ink-saver modes—with full support for PDF exporting, PNG sharing, and mobile-friendly zooming. Backend support was also added for generating AI-driven content, cached via Redis, to provide targeted study materials and key facts for every fix session. 
We've overhauled the Appearance settings to adopt a cleaner, more intuitive macOS-style interface. Theme selection now uses visual cards that dynamically reflect light, dark, or auto-split modes, while the surface style preview has been upgraded to a live, still scene that updates as you adjust the glass transparency slider. These changes improve user feedback and align better with modern design standards. 
