1.14.2 (2024-11-12)
1.14.1 (2024-11-07)
1.14.0 (2024-11-07)
- add missing dependencies to lesson plan tracking context (#307) (3758dfc)
- add missing prisma import (#342) (a0ac1de)
- disable feature flagg polling in tests (c44e1f1)
- null render in sidebar provider (#337) (9a12851)
- remaining linting fixes (#272) (18a0f70)
- set up server side styled-components (f221c24)
- skip instrumentation when running turbopack - fix HMR (4d6fd3b)
- add rag schema (migration) (#343) (638f43f)
- allow us to configure the server port for local testing (#308) (33bee19)
- bootstrap posthog feature flags with local evaluation (15e8a67)
- sync featureFlagGroup from clerk to posthog (46b4f13)
- update emails to use html (#319) (a71e7bc)
- use featureFlagGroup claim for feature flags (759534a)
1.13.1 (2024-11-05)
1.13.0 (2024-10-31)
- await persisting the generation (#292) (730dbb9)
- await the enqueue method in web actions (#293) (c9cb82b)
- await the save download event call (#317) (1e05c1a)
- completion and system messages do not need to be async (#294) (be79158)
- linting for app components (#295) (1212eb5)
- pages that do not load data do not need to be async (#296) (a7eaefa)
- promisify chat API route get handler (#316) (1824aea)
- reintroduce custom eslint (#284) (adc1efa)
- rename accordian to accordion (#297) (cd35dc1)
- set VS Code to prefer type imports (#291) (bc26948)
- update imports (type prefixes, paths) (#298) (c332717)
- use browserLogger for errors in the browser (#280) (647c904)
- use noengine in ci (#283) (3a1bfd4)
- use prisma generate --no-engine and reinstate prompts script (#282) (a157b9a)
- add an incrementing iteration number to the chat (#263) (5aaa1d9)
- selectively include Americanisms, RAG, analytics when instantiating Aila (#287) (4e5e1f2)
1.12.1 (2024-10-28)
1.12.0 (2024-10-28)
- ensure that the patch enqueuer exists when enqueuing (#264) (4d4b959)
- logger to stdout for info and warn (#266) (d2dfabc)
- module resolution with "node" instead of "bundler" (#271) (44ca5f6)
- reduce turbo errors on local dev, enable running e2e in built mode (#259) (afb4535)
- refactor lesson snapshots for improved efficiency (#234) (24f492d)
- reinstate prebuilding the chat route in local dev (#260) (1a4c51f)
- remove flash when loading wheel appears (#268) (d7a70f3)
- remove lessonReferences from prompt (#253) (a0cedec)
- report chat completion errors (#256) (13729ca)
- update prisma to latest version (#254) (b8b1958)
- add a test:seq command (#273) (d04d456)
- hint Aila as to which part of the lesson to update next (#265) (b8b39b8)
- ingest scripts (#200) (be824a8)
- local db setup scripts (#132) (d531a50)
1.11.0 (2024-10-22)
- add migration for ingest config (#239) (b4b9e60)
- ingest config migration fix (#243) (1bdf99a)
- sec: update next (#240) (bcda9d7)
1.10.2 (2024-10-16)
1.10.1 (2024-10-15)
- add fallback if requestSubmit is not available (#227) (e9b02c6)
- findLast is not available for all browsers (WIP) (#211) (a94e0f4)
- reduce middleware syntax error logs, send to logs, tests for CSP in each env (#213) (d18a7d2)
- remove lookbehind in regex for camelcase conversion (#226) (dc747c3)
- revert "fix: revert error to previous protocol (#139) (#218) (dccba58)
- silence unknown part type errors (#229) (2e3e56b)
1.10.0 (2024-10-14)
1.9.2 (2024-10-09)
1.9.1 (2024-10-04)
- enable stop button to clear queuedAction (#173) (98937a3)
- feature flag "download all" button (#178) (2676283)
- return a 400 for invalid input to middleware (#185) (b3de13b)
- robust handling of incomplete data in download all (#177) (7db415b)
1.9.0 (2024-10-02)
- close sidebar on new lesson (#116) (90a2a73)
- detect StreamingLessonPlan for mobile modal (#168) (ef56658)
- dialog window bug (#155) (443a398)
- feature flag "download all" button (#178) (60b4247)
- in app feedback snags (#153) (b1e625a)
- refetch chat on mount to fix the blank chat issue on back navigation (#166) (c2f74d7)
- robust handling of incomplete data in download all (#177) (06b15ae)
- safari blocking share page as it was an async window pop up (#131) (7365ea0)
- small bugs (#159) (712bf12)
- stop interaction except in moderation or idle (#165) (a162ff3)
1.8.0 (2024-09-30)
- 'generate' vs 'interactive' prompt fixes (#148) (d19d6c4)
- add a toggle to enable/disable structured outputs (#133) (cdf64ef)
- admin moderation order by date (#140) (76a9529)
- change extensions in mobile button (#115) (df73b6d)
- change plan parts embeddings to 256 vectprs (#157) (65f562c)
- changes text in modify (d7e1cb1)
- correct paths for help (#118) (43403df)
- detect StreamingLessonPlan for mobile modal (35b0460)
- error colour precedence in message wrapper (#112) (bd75989)
- fuzzy key stage from correct table (#125) (b370823)
- help button (#120) (d13a945)
- message ids, flag and modify tables (#145) (2d347eb)
- prompt generation types, variants and testing Open AI responses (#44) (571fee9)
- prompt key stage enum (#127) (22102fd)
- quiz designer snags (#113) (84b5e67)
- refetch chat on mount to fix the blank chat issue on back navigation (#166) (ac7828c)
- revert (e7221d2)
- send chat id with analytics events (#154) (638c851)
- stop interaction except in moderation or idle (#165) (e27b13a)
- survey not found bug (#121) (fe94d13)
- use new AI protocol format for friendly errors (#122) (55b299c)
- add distractor length to the schema (#68) (f6ace60)
- add time to first token for openai (#144) (79d51a8)
- allow the user to interact while moderation is in progress (#147) (8a3b9e1)
- check for exsisting downloads on download page mount (#114) (33d2846)
- invalidate moderation and unblock user (#109) (dfd988f)
- sanity (#151) (1ab164d)
- shortened text responses, basedOn selection and generate mode prompt tidy-up (#124) (940c97a)
- structured outputs for Aila (#91) (3145f2a)
- use TRPC for state and remove the spinner flash (#135) (efccbb6)
1.7.3 (2024-09-25)
1.7.2 (2024-09-23)
1.7.1 (2024-09-17)
1.7.0 (2024-09-16)
- change extensions in mobile button (#115) (36b26ba)
- correct paths for help (#118) (cbbf4d2)
- error colour precedence in message wrapper (#112) (18bfccc)
- exports page overlap (#105) (f2d1a57)
- help button (#120) (a492838)
- in app feedback snags (#108) (45e5a63)
- mobile video sizing (#106) (c235310)
- moderation prompt: lower false positives in toxic category (#102) (76e3cd5)
- quiz designer snags (#113) (db1b0d8)
- return protocol error messages for user restrictions (#111) (741c935)
- sidebar getting stuck at 0 (#107) (dedfd24)
- survey not found bug (#121) (705a267)
- use new AI protocol format for friendly errors (#122) (7402e72)
- add pwa manifest (#101) (c066f97)
- invalidate moderation and unblock user (#109) (5094c47)
- update content guidance text (#75) (b02ce31)
1.6.1 (2024-09-12)
1.6.0 (2024-09-06)
- add dummy-smoke-test moderation category to detect incorrect moderation (0ec0ab2)
- add litix to csp (#88) (3f621d5)
- allow the user to input other text (#90) (271f6b0)
- clear history button position (9d67dd8)
- don't send user email to main PostHog (#84) (0f18c46)
- downgrade moderation if all categories triggered at same time (ca5a830)
- email error message only on error (b6919e9)
- ensure prompt variants are initialised correctly (#57) (4d80a62)
- fix homepage video reponsive layout (4342d9f)
- hotfix incorrect top position in mobile view (#97) (e0003bb)
- mobile downloads blocked on demo (#82) (cfdf59c)
- prisma init singleton (#56) (4a3a7f4)
- remove demo header margin on mobile (3f5739b)
- remove duplicate beta tag on mobile (53221a4)
- share: fix share bug (#70) (11e6148)
- add retry limit and log (238cf26)
- add videos to home page (#77) (54edf80)
- give user feedback when download email is sent (#89) (573c542)
1.5.1 (2024-09-04)
- delete client side feature flag (#71) (82d26a2)
- downloads page auth check (#73) (e123cc9)
- include patch schema in llm response schema (#45) (1c6c1ac)
1.5.0 (2024-09-04)
- fix flash of demo banner when loading (c8a63e0)
- mobile launch bugs fixes (#52) (d828c11)
- remove sideways scroll on mobile (7038e70)
- add homepage link to AI blogs (d77ab56)
- add main oak posthog client (#60) (c56fa84)
- bring nav in line with latest design (49c8689)
- help text when downloading an unfinished lesson (7ef494f)
- launch (#61) (d9b19f7)
- new home page copy (#54) (a17a685)
- override styles for gleap button (4f57760)
1.4.0 (2024-09-04)
1.3.3 (2024-09-03)
- revert onboarding redirect fix now we've updated clerk session claims (0363334)
1.3.0 (2024-09-02)
- address sonarcloud warnings (07fc896)
- aila chat e2e test to handle 10 sections instead of 12 (f0c6899)
- Continue missing closing stars (2944c0f)
- doppler project name (1a80404)
- prompt version hash (#27) (2a15947)
- remove workspace colour overrides (#15) (06b6ac2)
- update terms and conditions link (#32) (79df249)
- add Prisma Accelerate caching to some of our queries (#22) (7a797ac)
- add telemetry to the chat API route (#26) (936641a)
- add users to hubspot on creation (19e5854)
- aila categoriser feature with chat ID and user ID (#12) (6b0839c)
- Detect and upgrade users with lissing metadata (c158f3d)
- detect and upgrade users with missing metadata (#18) (c4a0a3e)
- pass a mocked LLM Service to Aila via the new services object (#25) (78a9a59)
- prompt versioning (#19) (7629ac9)
- remove feedback message from header (d22c28a)
- update prompt with distractor, practice task and grammar improvements (#23) (cb65f9c)
- updates to download resources page (#17) (4f55547)
1.2.2 (2024-08-30)
1.2.1 (2024-08-29)
- user feedback on selection in the feedback dialog and mapping responses in posthog correctly (#13) (0d9b6bc)
1.2.0 (2024-08-28)
- quoting of moderation categories (5dcf4df)
- end of session survey (ac9bbc0)
- send quiz designer langchain ChatOpenAI calls through helicone (5a798fa)
- start populating metadata under labs prefix (efffd02)
1.1.42 (2024-08-22)
- job summary link (01c65e2)
- playwright tests for e2e (3188b52)
- remove seed lessons script (f581609)
- run e2e tests on merge into production and update deployment url to match new repo (aad171f)
- semantic release branch and doppler staging pull (53be0b8)
- sonarcloud properties and pnpm on post-deployment workflow (93b8df1)
- use vercel automation bypass from repo secrets (0be4f78)
What's Changed\r\n* Fix retry wording in system prompt by @codeincontext in https://github.com/oaknational/ai-beta/pull/740\r\n* Fix upgrade-insecure dev warning by @codeincontext in https://github.com/oaknational/ai-beta/pull/739\r\n* Lesson progress dropdown logic by @stefl in https://github.com/oaknational/ai-beta/pull/761\r\n* Add dialog if demo sharing is disabled by @codeincontext in https://github.com/oaknational/ai-beta/pull/736\r\n* Send user demo status to analytics by @codeincontext in https://github.com/oaknational/ai-beta/pull/733\r\n* Script: Set existing pre-release users to non-demo by @codeincontext in https://github.com/oaknational/ai-beta/pull/770\r\n* Demo accounts: Limit messages after lesson complete - main branch by @codeincontext in https://github.com/oaknational/ai-beta/pull/772\r\n* Demo chat creation dialog by @codeincontext in https://github.com/oaknational/ai-beta/pull/732\r\n* Dual trpc routers using a link by @codeincontext in https://github.com/oaknational/ai-beta/pull/774\r\n* Show mobile blocker on /aila page by @codeincontext in https://github.com/oaknational/ai-beta/pull/775\r\n* Simplify server side feature flags and use KV by @stefl in https://github.com/oaknational/ai-beta/pull/760\r\n* Wait for clerk client to load before detecting stuck user by @codeincontext in https://github.com/oaknational/ai-beta/pull/771\r\n* Fix demo check for interstitial by @codeincontext in https://github.com/oaknational/ai-beta/pull/777\r\n* Don't check ban status or increment rate limit for queries by @codeincontext in https://github.com/oaknational/ai-beta/pull/779\r\n* docs: readme by @mantagen in https://github.com/oaknational/ai-beta/pull/762\r\n* Extract chat logic to ChatProvider by @codeincontext in https://github.com/oaknational/ai-beta/pull/782\r\n* Fix "1-3 Cycles" error + setup jest tests for storybook files by @stefl in https://github.com/oaknational/ai-beta/pull/787\r\n* bug: change back to server side feature flags by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/788\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.40...v1.1.41-rc4
What's Changed\r\n* Fix demo region check in dev by @codeincontext in https://github.com/oaknational/ai-beta/pull/767\r\n* Bug/trpc provider conflicts by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/768\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.40-rc2...v1.1.40-rc3
What's Changed\r\n* Bug/ensure no null on share by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/746\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.39-rc1...v1.1.39-rc2
What's Changed\r\n* Security fixes (including 'share' logic) by @mantagen in https://github.com/oaknational/ai-beta/pull/711\r\n* Simplify usage of rate limits and georestriction by @codeincontext in https://github.com/oaknational/ai-beta/pull/721\r\n* Add demo account banner to Aila pages by @codeincontext in https://github.com/oaknational/ai-beta/pull/720\r\n* bug: hide the placeholder text from safari by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/724\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.38-rc3...v1.1.38-rc4
What's Changed\r\n* Correctly sample uri error by @mantagen in https://github.com/oaknational/ai-beta/pull/684\r\n* Set sentry user on login by @mantagen in https://github.com/oaknational/ai-beta/pull/681\r\n* Send sourcemaps to sentry by @mantagen in https://github.com/oaknational/ai-beta/pull/676\r\n* Only track refinement if it's not the first message by @mantagen in https://github.com/oaknational/ai-beta/pull/690\r\n* fix: next config devtool by @mantagen in https://github.com/oaknational/ai-beta/pull/695\r\n* Use full aila e2e tests on RC pull requests by @codeincontext in https://github.com/oaknational/ai-beta/pull/687\r\n* Clearer error reporting from HubspotLoader by @mantagen in https://github.com/oaknational/ai-beta/pull/696\r\n* Add include_usage to openai stream calls by @mantagen in https://github.com/oaknational/ai-beta/pull/694\r\n* Put moderation calls through helicone by @codeincontext in https://github.com/oaknational/ai-beta/pull/692\r\n* Require helicone env vars for openai calls by @codeincontext in https://github.com/oaknational/ai-beta/pull/691\r\n* Require helicone for runtime LLM calls in vercel production by @codeincontext in https://github.com/oaknational/ai-beta/pull/693\r\n\r\n## Excluded from this release\r\n* Refactor front end by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/667\r\n* Remove next-themes by @codeincontext in https://github.com/oaknational/ai-beta/pull/697\r\n* HOTFIX: Move clear history button back to right side by @codeincontext in https://github.com/oaknational/ai-beta/pull/698\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.36...v1.1.37-rc2
What's Changed\r\n* Change avo debugger position, fixing e2e tests by @mantagen in https://github.com/oaknational/ai-beta/pull/671\r\n* Page navigation tracking by @codeincontext in https://github.com/oaknational/ai-beta/pull/673\r\n* Save playwright traces in GH artifacts by @codeincontext in https://github.com/oaknational/ai-beta/pull/672\r\n* fix: fix json before attempt parsing by @mantagen in https://github.com/oaknational/ai-beta/pull/674\r\n* Add sentry tracesSampler for URIError by @mantagen in https://github.com/oaknational/ai-beta/pull/680\r\n* Use gpt-4o for the categorise requests by @mantagen in https://github.com/oaknational/ai-beta/pull/678\r\n* Queue initial page URL to hubspot by @codeincontext in https://github.com/oaknational/ai-beta/pull/675\r\n* Use env vars for posthog and clerk slack buttons by @codeincontext in https://github.com/oaknational/ai-beta/pull/677\r\n* Update sentry to v8 by @mantagen in https://github.com/oaknational/ai-beta/pull/683\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.35-rc1...v1.1.36-rc1
What's Changed\r\n* Add human-recognisable IDs to slack notifications by @codeincontext in https://github.com/oaknational/ai-beta/pull/661\r\n* Fix 404 page rendering for static paths by @codeincontext in https://github.com/oaknational/ai-beta/pull/655\r\n* chore: add avo api url to csp by @mantagen in https://github.com/oaknational/ai-beta/pull/664\r\n* Add e2e aila flow and reorganise playwright tests by @codeincontext in https://github.com/oaknational/ai-beta/pull/646\r\n* feat: update oak-consent-client by @simonrose121 in https://github.com/oaknational/ai-beta/pull/662\r\n* Fetch doppler env vars on-demand in github workflows by @codeincontext in https://github.com/oaknational/ai-beta/pull/666\r\n* feat: adds a report content button in the chat area by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/652\r\n* Set up native hubspot integration by @codeincontext in https://github.com/oaknational/ai-beta/pull/663\r\n* Avo event tracking event implementation by @mantagen in https://github.com/oaknational/ai-beta/pull/638\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.34...v1.1.35-rc1
What's Changed\r\n* Add jest github action by @codeincontext in https://github.com/oaknational/ai-beta/pull/645\r\n* From RC branch: Swap rate limit value and message fields by @codeincontext in https://github.com/oaknational/ai-beta/pull/648\r\n* Fixs the order of the lesson history In the side bar by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/654\r\n* Slack notifications for naughty behaviour by @codeincontext in https://github.com/oaknational/ai-beta/pull/653\r\n* ci: use temporary PAT with workflow permissions to allow new workflows to be pushed by @simonrose121 in https://github.com/oaknational/ai-beta/pull/656\r\n* Fix/id posthog by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/657\r\n* Reverting using PAT to allow workflow push on pre-release by @simonrose121 in https://github.com/oaknational/ai-beta/pull/658\r\n* Add stray workflow commit on production back to main branch by @codeincontext in https://github.com/oaknational/ai-beta/pull/659\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.33...v1.1.34-rc4
What's Changed\r\n* Add workarounds for now to catch invalid message parts by @stefl in https://github.com/oaknational/ai-beta/pull/643\r\n* Aila plugins: Extract web application behaviour from Aila package by @codeincontext in https://github.com/oaknational/ai-beta/pull/633\r\n* chore: update og image by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/644\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.32...v1.1.33-rc1
What's Changed\r\n* Refactor client-side analytics setup and initialise avo by @simonrose121 in https://github.com/oaknational/ai-beta/pull/611\r\n* fix: add posthog identify before feature flag check by @simonrose121 in https://github.com/oaknational/ai-beta/pull/639\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.31...v1.1.32-rc2
What's Changed\r\n* Remove unused files found with knip by @codeincontext in https://github.com/oaknational/ai-beta/pull/624\r\n* feat: Working e2e playwright setup by @codeincontext in https://github.com/oaknational/ai-beta/pull/563\r\n* Detect when a banned Clerk user is stuck with a loading spinner by @codeincontext in https://github.com/oaknational/ai-beta/pull/619\r\n* Clear local state on toxic moderation by @mantagen in https://github.com/oaknational/ai-beta/pull/630\r\n* Tweak moderation styles by @mantagen in https://github.com/oaknational/ai-beta/pull/636\r\n* Handle user bans natively in aila package by @codeincontext in https://github.com/oaknational/ai-beta/pull/631\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.30...v1.1.31-rc1
What's Changed\r\n* feat: replace civic with oak consent app by @simonrose121 in https://github.com/oaknational/ai-beta/pull/553\r\n* Make share page publicly accessible by @codeincontext in https://github.com/oaknational/ai-beta/pull/612\r\n* Add 404 page by @codeincontext in https://github.com/oaknational/ai-beta/pull/616\r\n* V1 1 29 rc2/rc fixes by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/614\r\n* Add node types to tsconfig by @codeincontext in https://github.com/oaknational/ai-beta/pull/620\r\n* feat: marketing survey by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/625\r\n* WIP: Aila CLI part two by @stefl in https://github.com/oaknational/ai-beta/pull/613\r\n* WIP: CLI: Remove oclif and just use a script for now by @stefl in https://github.com/oaknational/ai-beta/pull/628\r\n* new lesson button by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/604\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.29...v1.1.30-rc1
What's Changed\r\n* Make share page publicly accessible by @codeincontext in https://github.com/oaknational/ai-beta/pull/612\r\n* V1 1 29 rc2/rc fixes by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/614\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.29-rc2...v1.1.29-rc4
Full Changelog: https://github.com/oaknational/ai-beta/compare/v1.1.27...v1.1.28-rc1
Full Changelog: https://github.com/oaknational/ai-beta/compare/v1.1.26-rc1...v1.1.27-rc2
What's Changed\r\n* bug: align icons by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/589\r\n* style: fix ordered list styles in markdown by @mantagen in https://github.com/oaknational/ai-beta/pull/595\r\n* fix: dependabot alerts by @simonrose121 in https://github.com/oaknational/ai-beta/pull/594\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.25...v1.1.26-rc1
What's Changed\r\n* Handle helicone threat detections by @mantagen in https://github.com/oaknational/ai-beta/pull/568\r\n* Suspending users after safety violations by @codeincontext in https://github.com/oaknational/ai-beta/pull/570\r\n* chore: Capture TRPC exceptions properly in sentry by @codeincontext in https://github.com/oaknational/ai-beta/pull/547\r\n* Feedback survey: fix hook to return correct survey by @mantagen in https://github.com/oaknational/ai-beta/pull/569\r\n* Red team testing: Don't ban users with the safety-testing feature flag by @codeincontext in https://github.com/oaknational/ai-beta/pull/578\r\n* User blocking: Add Action message type by @codeincontext in https://github.com/oaknational/ai-beta/pull/573\r\n* Add /api/health to clerk public pages by @codeincontext in https://github.com/oaknational/ai-beta/pull/580\r\n* bugs: cross browser bugs by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/575\r\n* Fix: Add CSP headers to all next.js requests by @codeincontext in https://github.com/oaknational/ai-beta/pull/579\r\n* Add __session to known CookieControl cookies by @codeincontext in https://github.com/oaknational/ai-beta/pull/584\r\n* Output moderation by @mantagen in https://github.com/oaknational/ai-beta/pull/576\r\n* Update helicone headers by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/585\r\n* Revert "Update helicone headers" by @mantagen in https://github.com/oaknational/ai-beta/pull/587\r\n* Update/helicone envs by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/588\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.24...v1.1.25-rc1
Hotfix/healthcheck datadog release by @codeincontext in #581\r\n\r\nFull Changelog: https://github.com/oaknational/ai-beta/compare/v1.1.22...v1.1.24-rc1
What's Changed\r\n* Update to Clerk 5.1 by @codeincontext in https://github.com/oaknational/ai-beta/pull/554\r\n* feat: add text search snippet migration by @remy in https://github.com/oaknational/ai-beta/pull/560\r\n* Voice improvements plus prompt quality tweaks by @stefl in https://github.com/oaknational/ai-beta/pull/559\r\n* fix: dependabot alerts by @simonrose121 in https://github.com/oaknational/ai-beta/pull/561\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.21...v1.1.22-rc1
What's Changed\r\n* hotfix: nonce header key by @codeincontext in https://github.com/oaknational/ai-beta/pull/555\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.20...v1.1.21-rc1
What's Changed\r\n* fix: properly read x-oai-api-key and expose transcript trpc endpoint by @remy in https://github.com/oaknational/ai-beta/pull/545\r\n* chore: Add google fonts to CSP by @codeincontext in https://github.com/oaknational/ai-beta/pull/548\r\n* fix: Log missing nonce error client side to help debug by @codeincontext in https://github.com/oaknational/ai-beta/pull/550\r\n* Fix: Use OpenAI directly for moderations endpoint (not helicone) by @codeincontext in https://github.com/oaknational/ai-beta/pull/551\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.19...v1.1.20-rc1
What's Changed\r\n* fix(csp) add fake nonce directive to legacy header for next.js injection by @codeincontext in https://github.com/oaknational/ai-beta/pull/513\r\n* Feat/lesson snapshots + exports in db by @mantagen in https://github.com/oaknational/ai-beta/pull/514\r\n* fix(exports): fire and forget download event, and use shortId for filename by @mantagen in https://github.com/oaknational/ai-beta/pull/518\r\n* Adding Aila to the prompt by @stefl in https://github.com/oaknational/ai-beta/pull/510\r\n* fix(csp): add worker-src configuration for blob (attempt 2) by @simonrose121 in https://github.com/oaknational/ai-beta/pull/523\r\n* fix(csp): add cloudflare challenge url to frame-src by @simonrose121 in https://github.com/oaknational/ai-beta/pull/525\r\n* home page by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/517\r\n* Exports documentation: changing a template by @mantagen in https://github.com/oaknational/ai-beta/pull/521\r\n* Chore/home page by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/531\r\n* Disable Sentry replays and reduce general sample rate to 0.2 by @stefl in https://github.com/oaknational/ai-beta/pull/528\r\n* chore(csp) Add CSP report sample rate by @codeincontext in https://github.com/oaknational/ai-beta/pull/520\r\n* chore(security): package update by @mantagen in https://github.com/oaknational/ai-beta/pull/503\r\n* Add error breadcrumbs to exports routes by @mantagen in https://github.com/oaknational/ai-beta/pull/534\r\n* fix: omit download from button attribute by @mantagen in https://github.com/oaknational/ai-beta/pull/536\r\n* Update Aila 'coming soon' copy by @mantagen in https://github.com/oaknational/ai-beta/pull/538\r\n* Coming soon on 'feature flag' by @mantagen in https://github.com/oaknational/ai-beta/pull/540\r\n* Block menu and faqs to non feature flag by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/542\r\n\r\n## New Contributors\r\n* @simonrose121 made their first contribution in https://github.com/oaknational/ai-beta/pull/523\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.11...v1.1.19
What's Changed\r\n* Coming soon on 'feature flag' by @mantagen in https://github.com/oaknational/ai-beta/pull/540\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.17-rc1...v1.1.18-rc1
What's Changed\r\n* Update Aila 'coming soon' copy by @mantagen in https://github.com/oaknational/ai-beta/pull/538\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.16...v1.1.17-rc1
What's Changed\r\n* Disable Sentry replays and reduce general sample rate to 0.2 by @stefl in https://github.com/oaknational/ai-beta/pull/528\r\n* chore(csp) Add CSP report sample rate by @codeincontext in https://github.com/oaknational/ai-beta/pull/520\r\n* chore(security): package update by @mantagen in https://github.com/oaknational/ai-beta/pull/503\r\n* Add error breadcrumbs to exports routes by @mantagen in https://github.com/oaknational/ai-beta/pull/534\r\n* fix: omit download from button attribute by @mantagen in https://github.com/oaknational/ai-beta/pull/536\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.15...v1.1.16-rc2
What's Changed\r\n* home page by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/517\r\n* Exports documentation: changing a template by @mantagen in https://github.com/oaknational/ai-beta/pull/521\r\n* Chore/home page by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/531\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.14...v1.1.15-rc2
What's Changed\r\n* fix(csp): add cloudflare challenge url to frame-src by @simonrose121 in https://github.com/oaknational/ai-beta/pull/525\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.13...v1.1.14-rc2
What's Changed\r\n* Feat/lesson snapshots + exports in db by @mantagen in https://github.com/oaknational/ai-beta/pull/514\r\n* fix(exports): fire and forget download event, and use shortId for filename by @mantagen in https://github.com/oaknational/ai-beta/pull/518\r\n* Adding Aila to the prompt by @stefl in https://github.com/oaknational/ai-beta/pull/510\r\n* fix(csp): add worker-src configuration for blob (attempt 2) by @simonrose121 in https://github.com/oaknational/ai-beta/pull/523\r\n\r\n## New Contributors\r\n* @simonrose121 made their first contribution in https://github.com/oaknational/ai-beta/pull/523\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.12...v1.1.13-rc3
What's Changed\r\n* fix(csp) add fake nonce directive to legacy header for next.js injection by @codeincontext in https://github.com/oaknational/ai-beta/pull/513\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.11...v1.1.12-rc1
What's Changed\r\n* feat: redesign initial chat, warning message, refactor header, allows oak users to view all chats by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/496\r\n* Prompt clean by @stefl in https://github.com/oaknational/ai-beta/pull/506\r\n* Switch CSP handling over to next.js by @codeincontext in https://github.com/oaknational/ai-beta/pull/509\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.10...v1.1.11
What's Changed\r\n* Copy exports template file to 'output' folder by @mantagen in https://github.com/oaknational/ai-beta/pull/500\r\n* Content security policy step 1: Report-Only by @codeincontext in https://github.com/oaknational/ai-beta/pull/498\r\n* revert: streaming text page by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/507\r\n* GPT-4o by @stefl in https://github.com/oaknational/ai-beta/pull/502\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.9...v1.1.10-rc1
What's Changed\r\n* Add pre-release and release workflows by @mantagen in https://github.com/oaknational/ai-beta/pull/488\r\n* chore: typo by @mantagen in https://github.com/oaknational/ai-beta/pull/489\r\n* FIX: Retain posthog anonymous ID when initialising, fixing UTM tags by @codeincontext in https://github.com/oaknational/ai-beta/pull/487\r\n* build: fix PR title for release process by @mantagen in https://github.com/oaknational/ai-beta/pull/493\r\n* Add additional user ID metadata to both Open AI and Helicone by @stefl in https://github.com/oaknational/ai-beta/pull/491\r\n* build(pre-release workflow): merge with ours strategy by @mantagen in https://github.com/oaknational/ai-beta/pull/494\r\n* chore: update legal links by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/492\r\n* Improve coherence and adherence to the JSON schema by @stefl in https://github.com/oaknational/ai-beta/pull/497\r\n* Refactor the left hand side chat list by @stefl in https://github.com/oaknational/ai-beta/pull/474\r\n* More lenient types for json patch, plus some related Americanisms fixes by @stefl in https://github.com/oaknational/ai-beta/pull/504\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.8...v1.1.9-rc2
What's Changed\r\n* chore: update legal links by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/492\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.7-rc2...v1.1.8-rc1
What's Changed\r\n* Add pre-release and release workflows by @mantagen in https://github.com/oaknational/ai-beta/pull/488\r\n* chore: typo by @mantagen in https://github.com/oaknational/ai-beta/pull/489\r\n* FIX: Retain posthog anonymous ID when initialising, fixing UTM tags by @codeincontext in https://github.com/oaknational/ai-beta/pull/487\r\n* build: fix PR title for release process by @mantagen in https://github.com/oaknational/ai-beta/pull/493\r\n* Add additional user ID metadata to both Open AI and Helicone by @stefl in https://github.com/oaknational/ai-beta/pull/491\r\n* build(pre-release workflow): merge with ours strategy by @mantagen in https://github.com/oaknational/ai-beta/pull/494\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.6...v1.1.7-rc2
What's Changed\r\n* Add pre-release and release workflows by @mantagen in https://github.com/oaknational/ai-beta/pull/488\r\n* chore: typo by @mantagen in https://github.com/oaknational/ai-beta/pull/489\r\n\r\n\r\n**Full Changelog**: https://github.com/oaknational/ai-beta/compare/v1.1.5...v1.1.6-rc2
1.1.5 (2024-05-13)
- refactor: download links document type definitions by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/486
Full Changelog: https://github.com/oaknational/ai-beta/compare/v1.1.4...v1.1.5
1.1.4 (2024-05-13)
- feat: add helicone logging by @stefl in https://github.com/oaknational/ai-beta/pull/475
Full Changelog: https://github.com/oaknational/ai-beta/compare/v1.1.3...v1.1.4
1.1.3 (2024-05-13)
- Feat/progress feedback by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/471
- chore: redirect chat -> aila by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/473
- Update slides and page offsets by @codeincontext in https://github.com/oaknational/ai-beta/pull/472
- Feat: Add learning cycle feedback fields to slide generator by @codeincontext in https://github.com/oaknational/ai-beta/pull/477
- UI fixes on main by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/479
- bug: fix share page by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/481
- chore: add help page by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/478
Full Changelog: https://github.com/oaknational/ai-beta/compare/v1.1.2...v1.3.0
1.1.2 (2024-05-08)
- American to British English corrections by @stefl in https://github.com/oaknational/ai-beta/pull/464
- feat: Rate limiting for lesson planner chats by @codeincontext in https://github.com/oaknational/ai-beta/pull/432
- feat: remove openapi from repo by @remy in https://github.com/oaknational/ai-beta/pull/458
- Feat: Update page titles to 'AI Lesson Planner' by @codeincontext in https://github.com/oaknational/ai-beta/pull/469
- Refactor statistics to use Prisma.sql and Prisma.raw by @codeincontext in https://github.com/oaknational/ai-beta/pull/457
- Allow downloads by non-Google accounts by @mantagen in https://github.com/oaknational/ai-beta/pull/465
1.1.1 (2024-05-07)
- Reinstate JSON schema in the prompt by @stefl in https://github.com/oaknational/ai-beta/pull/461
- Add some more reinforcement about British English by @stefl in https://github.com/oaknational/ai-beta/pull/460
- Remove the /rag endpoints. Add Zod parsing by @stefl in https://github.com/oaknational/ai-beta/pull/459
- fix: push to production only when a tag release is 'published' by @mantagen in https://github.com/oaknational/ai-beta/pull/463
- chore: Remove bugsnag by @tomwisecodes in https://github.com/oaknational/ai-beta/pull/441
1.1.0 (2024-05-02)
- sentry releases: align sentry version and release stage with values from our next.config.js (d3c4147)
1.0.4 (2024-04-30)
1.0.3 (2024-04-30)
1.0.2 (2024-04-30)
1.0.1 (2024-04-30)
- add border to checkboxes (f10d106)
- add children prop back to Checkbox (d01d051)
- add extra handling around session invalidity (50f6e3a)
- add fake openai key to ci.yml to try and get build working (1174b80)
- add missing inngest import to app router (ad65c65)
- add missing lesson planner events, fix those referring to wrong app (7cda62f)
- add newline formatting to /prompts page (ff5aa42)
- add user_id to appSession schema (56b8d67)
- align zod versions so inngest EventSchemas correctly type-check (f7565cf)
- assert that the inngest upload call was successful (0510f5b)
- attempt again to apply auth to all rotues (59c7c73)
- attempt to add disabled button state styles (7dcd19c)
- attempt to filter out third party IP containing lessons from scrape (1db2377)
- attempt to fix button regressions (e80df57)
- attempt to retry createSession once (035d331)
- attempt to use netlify background functions for inngest jobs (4a6a739)
- bug where submit needs clicking twice (b7495e4)
- capture initial pageviews (3f52153)
- cast GenerationPart related zod schemas to simplify types (737be30)
- chatbot downloads (d25ee9e)
- check gleap key exists before intializing (1cb54e7)
- conditionally enable clerk debug mode based on CLERK_LOGGING env (81aa235)
- conditionally pick env for PRs/main pushes (4223928)
- consistently name quiz_designer* events (ea16943)
- correct lesson/quiz state status types in schemas (85fdc16)
- correctly sync answer tweaking and local state, extract Answer comp (2decf36)
- create necessary db users for migrations to work locally (b19a69d)
- create necessary db users for migrations to work locally (27f915d)
- create session on page mount, don't block quiz begin (9e7d99f)
- disable distractor edit/regenerate buttons while loading or editing (8bc86fa)
- disable lp section actions while streaming (3ab67dd)
- docker-clear npm script: check container existence (177225a)
- don't allow re-generating answers and distractors without question (44990fa)
- don't attempt to infer app version from tags, as we don't use them (ba1b8a0)
- don't attempt to opt_out from posthog if we don't have the API key (c54cf1b)
- don't attempt to save lesson data to localstorage until generated (223f541)
- don't call bugsnag.getPlugin before bugsnag is initialized (db2f40d)
- don't call posthog opt_out/identify until we've definitely loaded (384d14c)
- don't check user.isLoaded before attempting to create session (dbc2f29)
- don't clear localstorage quizData by setting it to an empty string (ef2c020)
- don't fail to render a whole quiz if we're just missing the name (ca82e4b)
- don't flag 100% of generations (def02d7)
- don't hide the topic input when navigating back to topic if set (bee2cdd)
- don't import @oakai/core from core itself (8cd43ca)
- don't import from langchain core (821df2c)
- don't initialize posthog before API key is available (v2..) (a019948)
- don't needlessly opt_out after posthog inits (f10997e)
- don't overscroll past first lp header when streaming starts (d1181e9)
- don't persist quiz state until after the user has started (b47d858)
- don't randomly re-shuffle the lesson plan quizzes each render (9d2e9f8)
- don't redirect to onboarding or require auth for legal pages (d108770)
- don't refetch lesson playground content on window focus (2176b4f)
- don't rely on prisma global in api/health (518c921)
- don't render falsy time values when passed to Generating (f93f661)
- don't reset questions when they edit KS and return to questions (0dd4673)
- don't return isLegacy lessons (5e81c6e)
- don't send all generation metadata alongside lesson plan sections (826abb7)
- don't start the quiz editing when session creation sucesfull (dc1e3f9)
- don't tell the user they're ratelimited when they're not (5081201)
- don't transition loading->idle->loading in useGeneration (a056c8a)
- don't wait for user.isLoaded to become true as it often doesn't (69922c1)
- enable prisma pgbouncer mode with directUrl fallback (a45af13)
- enable reverse proxying netlify with clerk (7fbd52b)
- ensure
lessonPlanJson
in promptInputs is serialized (27fadc7) - ensure answer generations send all required values, show errors (f1c8fb9)
- ensure apps returned by appRouter are correctly serialized (ae9582e)
- ensure different questions within a section are sorted differently (fe203d6)
- ensure inngest calls our subdomain to avoid redirects & CF access (9ae8ef6)
- ensure originalValue is sent to backend on tweak (fd3e4ec)
- ensure parseLocalStorageData returns shape of parsed data (33682c6)
- ensure pino logs are sent to datadog (6e2b459)
- ensure placeholder content is passed to quizzes (de17097)
- ensure placeholder quizzes are rendered (b01c279)
- ensure postgresql-contrib is installed in docker container (3c60185)
- ensure postgresql-contrib is installed in docker container (c96e8e5)
- ensure promptInputs are always saved (bd18619)
- ensure quiz questions have a defaultValue (c046011)
- ensure ratelimit notification is shown at appropriate time (9710a53)
- ensure sessionId is sent for tweaks and item flagging requests (7a534e8)
- ensure trpc requests get the clerk middleware context (cb1ebc1)
- ensure useGenerationCallbacks.onSuccess is actually called (4355d6a)
- ensure user is loaded before creating quiz session (11d3482)
- ensure zod parse fail is returned to useGeneration caller (c19b0e7)
- explicitly log generation errors inline, not onFail (697bb9f)
- explicitly log root error when formatting fails (df6c071)
- extract DistractorInput, correctly handle state updates (4702e4d)
- filter generation data returned to client (ba1b3c5)
- fix import causing inngest client to be called before definition (3055544)
- fix linter error by upgrading typescript-eslint to v6 (04f63b6)
- fix onboarding checkbox width (d9b878b)
- fix regression with key learning points appearing twice (a7c2a51)
- fix UI for non feature flagged lesson plan users (aff5a35)
- get ci building again (2ae2bb9)
- gpt unable to place request (cfd789f)
- handle background function invocation in netlify-plugin-inngest (b52e947)
- handle moderation failed state in useGeneration (def863b)
- handle new loading states after initial useGeneration mutation (fddf90f)
- hide answers while re-generating (0f24f91)
- hook up regenerate all (2a5e45e)
- hook up regenerate-distractor (d03141f)
- ignore table owners when running pg_dump (c7eb77d)
- incorrect prompt name in regenerate-all-distractors tooltip (015d98d)
- increase FE timeout for lesson-planner (d3dfdac)
- introduce lesson plan status to handle generation streaming (5d4a1d2)
- jobs: ensure generations exist before hitting OpenAI (0ee3567)
- keep path when redirecting from netlify to our subdomain (86c84e9)
- lesson-page: fix invalid field IDs and incorrect labels (b631086)
- load appropriate civic product from environment (3c5dbc1)
- lock quiz designer behind login (cfb26fa)
- lock quiz designer behind login (c9b7859)
- loosen FE types, ensure initialState has nulled sessionId (0a51fd2)
- make appSession optional to ease migrations (4529536)
- make chevron icon on select menu clickable (7f9e79c)
- make new types with with generations.flag endpoint (93615f5)
- make recalculateStatistics run on cron (9c5a2ad)
- make TRPCError log line more useful (b980ffa)
- manually redirect unauthenticated users from quiz-designer (bb97b58)
- mark generation rateLimit as optional on outputSchema (f7da26d)
- mark lesson sidebar buttons as disabled while generating (44dfce5)
- move openai model instantiation out of constructor, fix CI build (538af15)
- move questions across to OWA (8194518)
- move secrets to root of workflow (a8cef53)
- notify bugsnag on caught preview error (1e2092f)
- only allow _next/static, not _next/data in middleware (e87df09)
- only attempt to create session once, debug log user.isLoaded (779ab73)
- only attempt to restore session from localstorage once (f8abd6c)
- only call updateSessionState while the user is editing a LP (3b2ad69)
- only create 1 session, remove eslint ignore (8c71f5e)
- only stream generations that explicitly opt in (1a0ef06)
- only trigger useGeneration's callbacks when transitioning state (cd61c91)
- overwriting bug in export lesson plan doc (a31fba6)
- pass all github secrets as env vars to build step (ec40ed8)
- pass correct numberOfDistractors/Answers to each generation (c7bae99)
- pass estimated prompt timings to lesson plan components (a876917)
- pass LLM generated error message to front-end (45e9626)
- preserve all newlines when copying content of html to text (a2d3ecb)
- qd: attempt to fix disabled quiz button by tightening localstorage (671c24a)
- quiz-designer: temporarily remove disabled attr from generation btn (b94071e)
- re-enable exports with new data structure (1300e3b)
- re-enable quiz previews by replacing faulty shuffle algo (b02a91f)
- remove 2nd arg to
getChat
(993be00) - remove accidental debugging of requestGeneration function (f946ec8)
- remove casting in KeywordSection (c908678)
- remove casting in KeywordSection (e8b09e0)
- remove console log from CardButton, fix invalid type import (569f0aa)
- remove explicit button tracking, which dupes autocaptures events (75dd596)
- remove generation streaming feature flag (09cd43a)
- remove hard-coded error in requestGeneration (edbb863)
- remove legal menu items from side navigation (bcc9ed6)
- remove nullable states from useCallback ratelimit (9fa9658)
- remove references to lessonActivities (dc79e47)
- remove undefined
browserLogger.isLevelEnabled
call causing errors (24d0e55) - rename packages/core to @oakai/core (412a4cf)
- return API errors from useGeneration hook (ccd9d30)
- round and pad estimated durations in Generating component (dd8d6c5)
- save original tweak values to db, update column to be originalValue (716c9bd)
- save original values in user tweaks (e5facd9)
- save user privacy policy acceptance to clerk (5db0b47)
- send original error when reporting session fail to bugsnag (2b20634)
- sentry env (be98e39)
- set default button width (641bf7b)
- set github environment in ci.yml (6f9b908)
- set state.rateLimit.generationsRemaning to nullable (ba785e4)
- set tRPC to not refetchOnWindowFocus by default (93aad5b)
- show average time copy for users without streaming enabled (eff9526)
- simplify response for text similarity (c242128)
- sort paths (4f6f29d)
- stop generation.request from failing tRPC output validation (721b711)
- swallow all feedback/tweak/regen errors server-side (68a7d97)
- switch to using hasura for downloads (5dbdfa5)
- temporarily mark lastGenerationId as optional (2ba8fd7)
- update store rateLimit on generation start (7c9d97b)
- update the MV for downloads - need to make my own (5c7bc1e)
- upsert instead of delete/recreate apps in seed script (779ab6f)
- use /api/inngest in netlify plugin (fe81a76)
- use correct app/prompt slugs for all lesson plan queries (6146e7e)
- use correct app/prompt slugs for lesson plan queries (c096313)
- use correct ports for inngest npm scripts (5d35940)
- use correct posthog env var to intialize client (c5366c9)
- use DEPLOY_PRIME_URL instead of URL to enable preview deploys (6c18550)
- use posthog react hook, inline checks to component so ph inits (e741fa5)
- use serverRuntimeConfig to infer inngest env (efcd7d3)
- wire up rate limit notifications to state (8e8b770)
- wire up regenerate all distractors (f91b187)
- add "serializers" for prompts & apps to filter user visible data (4a0913c)
- add @oakai/logger package, using pino & prettifying dev logs (e0986b0)
- add /api/health endpoint, check db connection (b1070e7)
- add /generations/with-template REST api endpoint (7fe30b6)
- add additional bugsnag breadcrumbs to generation FE (9661d68)
- add additional GenerationStatus members to describe more states (c5ab53b)
- add additional openAPI endpoints for generations/sessions (158499d)
- add alt generation for quizzes (0509e2b)
- add api key based middleware (b256c73)
- add apis for open api usage (8a6e594)
- add app.timings trpc procedure with avg generation times (0c0d622)
- add bugsnag build reporter plugin and app version tracking (eeedf9c)
- add bugsnag coverage (d5728e7)
- add completedAt column to generations, rename duration (925d7f3)
- add copy to clipboard (96ffab2)
- add cors support on api (7472820)
- add curriculum content to api (9b18d1d)
- add debug logging to cookie control (bf9809e)
- add descriptions to help gpt (4b8c1bd)
- add disabled state to question input while generating (0befd79)
- add dockerfile, npm setup & ssh scripts (c10c80a)
- add downloads (caeef6a)
- add exports for chatbot (a6389fb)
- add extend-lesson-plan-quiz prompt (cc9cae6)
- add feature flag that desen't require initalisation (8aef49a)
- add feedback related actions to model, wire up initial tRPC logic (7009c71)
- add filtering to the assets (94245d9)
- add Generation entity to schema file (bfff79f)
- add hooks for eexports (5734a53)
- add import for all shared items via user id (fb1fcf8)
- add ingent event logging middleware (7c1d872)
- add initial migration (2b73ccc)
- add inngest checks to /api/health endpoint (c1239c6)
- add inngest job to recalculate statistics every 30 mins (d485e4c)
- add input/output schema fields to Prompt model (a5a6b46)
- add key (1980c0c)
- add latest migrations for summaries (9a42215)
- add lesson description to CJ (5466001)
- add limiting to requestGeneration, pass to ctx, rm @trpc-ratelimit (6c112af)
- add LLM_REFUSAL flag type (c63c005)
- add local storage to the quiz (71cb5ce)
- add migration (1d6f48b)
- add migration for feedback tables (0095f0b)
- add migration to add empty input/output schemas to prompts (604e45a)
- add migrations for session creation & linking (2e62f78)
- add mocked quiz builder tprc methods (23ef6e8)
- add moderation results migration (a8434a2)
- add moderationType and moderationMeta fields to generation schema (90db317)
- add more context to requestGeneration logs (7df695a)
- add new skelatton component ahead of streaming (9ff4153)
- add node and pnpm versions to each package.json (ea0b905)
- add NonRecoverableError status to quiz app, for when session fails (9f48808)
- add output column to app session and a new share db (d3264b9)
- add postmark email sending to gleap for quiz feedback (95afeff)
- add Prompt model, seed prompts for quiz-generator (392f2bc)
- add prompt_id to statistics (1aaa01f)
- add schema for app sessions (e387a53)
- add script to bulk import users from clerk (71329a9)
- add scripts to dump staging db contents into local docker db (82a8f8c)
- add sign up button to homepage hero when not logged in (c291f57)
- add slides api route (1dddbd0)
- add some randomness to mock data to help frontend debugging (bac7d90)
- add statistics db table (13e9d03)
- add statistics migrations (576e0a9)
- add suggested lesson to lesson planner (c6eea1f)
- add TMAI (1fc6ff5)
- add token usage columns to generations (feab16b)
- add tRPC method to create new app sessions (99c2ada)
- add UI for extending lesson plan quizzes (9926acc)
- add uptime monitoring id to page meta (082f27f)
- add useGeneration hook to allow creating & subbing to generations (5d0233e)
- add useGenerationCallbacks hook to improve DX of useGeneration (3008d47)
- add users table (7a2939d)
- add zod type hints to inngest client (7c48a5a)
- add_prompts migration (1bd4633)
- adds policy redirects (845ae8a)
- adjust refetch (51a3ac3)
- adjust the slides data structure (81b8ba5)
- adjust to make a copy rather than give users access to oaks drive (83e02a6)
- allow authenticating via API key (a8b0166)
- allow for removing MODERATION_* envs (c41720c)
- allow opting in to ratelimiting by adding rate-limit-me to email (049d6b7)
- allow overriding browser log level with ?logLevel search param (5387920)
- animated tick when section has loaded (df961d7)
- auto-generate zod types from prisma definitions (7620b77)
- background to blue (ae9cc2b)
- bootstrap ph client with userId, add email to identify call (42bc5d9)
- calculate mean and median llm and total generation timings (8a63779)
- call openAI with basic prompt from generation.requested job (4b06e4a)
- capture moderationType on flag (74f7262)
- capture more metadata about flagged generations (04bab00)
- centralise generation event tracking in hook, add minor events (7c0c308)
- change /lessons/{slug}/summary to OWA data (8b1d43d)
- check prompt existence before starting generation (3729286)
- confirm new question layout (9ad84f1)
- continue buttons (fcb6e1f)
- control english language moderation with env vars (c28bd84)
- convert to new look and feel (dce4300)
- create dialog step for exporting slides (eb808a5)
- create generation.requested job with stubbed responses (e51ff38)
- create Generations model (56afd22)
- create generations page (22869b8)
- create migration for db change (2fe52b5)
- create sharing page for cj (3d49548)
- create suggested quesitons compoennt (15ed3ac)
- create trpc methods to create and look up a generation (9f2368d)
- debounce calls to updateSession / setting localStorage (96ff232)
- desktop review (802a345)
- dialog button on resetting the session on quiz (7a9a473)
- dialog works (5cc5537)
- differentiate between LLM refusal and errors, don't throw on fail (861d9c4)
- disable distractor editing mode when the field is blurred (3f33c89)
- disable starting quiz when in a non-recoverable error state (4016247)
- doc export (07370fb)
- don't refetch subject/ks/generations on window focus (a18ec35)
- download worksheet (8ac0470)
- downloads work for variable amount of lesson cycles (369b9ff)
- enable ad-hoc completions by calling generateWithTemplate method (957c160)
- enable streaming in lesson planner (26f9637)
- enable streaming in requestGeneration (89c3682)
- ensure dev logs are properly formatted via turbo (12ecb5b)
- ensure failed generations are marked as such after inngest retries (e6ae23f)
- ensure share page pulls data from db (810a39e)
- ensure trackEvent events are always caught internally (9f4da89)
- explicitly opt out of caching nextjs auth middleware (ac319a2)
- exports: feature parity (e065eb4)
- expose signed downloads (c51dd62)
- extract prompt invocation logic to Prompt model (37a6a37)
- force user to focus on the keystage picker (9f663ff)
- force user to pick keystage + subject before (a4ca3cb)
- further design implementation (85260a2)
- generation status migrations (5a11a8f)
- generations + prompts page working (dd73c4a)
- handle new generation states in hooks (72c4497)
- hide some upstream error details from end users (7987983)
- hook and new share buttons in all places (0c41ee6)
- identify posthog users by clerk userId (333cb46)
- identify users in the backend (6a1ea63)
- implement rate-limiting middleware with redis (aeee90a)
- improve openapi schema for better gpt import (cb52620)
- infer generation part types from zod schemas (8754fd9)
- infer generation ratelimit from env, or 20/24h by default (2a6eafa)
- infer ingest environment from deploy context (789e014)
- inital work towards suggested lessons in QD (4cfc13a)
- inital work towards suggested lessons in QD (fc25b3e)
- integrate browser logger, improve console logging (cba84a8)
- integrate logger in requestGeneration, trpc error handler (6414615)
- integrate new timings endpoint with quiz designer components (ffc1903)
- integrate trpc-openai (65f3991)
- introduce GenerationPartPlaceholder variant for partial data (4715eb0)
- judgment front to back (2ce2477)
- layout review with blue bg (b7011bb)
- layout updates and mobile (ac7aec9)
- log all tRPC errors (e9dea93)
- log each step in requestGeneration (8542b5d)
- make bugsnag usage broadly consistent with OWA (c70b89e)
- make component reusable in control by versions (54d926c)
- make component reusable in control by versions (5d7ba42)
- make edge runtime compatible version of logger (24f934d)
- make feedback start working (91d677f)
- merged (bed6e34)
- merged and chatbot works (cdb756b)
- mobile layout (111625f)
- move exports into own package (04d5eed)
- move to v0 and put swagger ui back (3a5fefc)
- obscure internal server error stacktrackes from tRPC client (c0c95b7)
- only allow users to find their own generations (37708ed)
- only stream generations when requested to (9408eda)
- parse generation.requested event schemas with zod (e956b3a)
- pass all rate limiting info to notification component (883a50a)
- pass around app & prompt ids instead of slugs past the API layer (6645b7c)
- pass env param to inngest to differentiate branch deploys (6022161)
- pass flag with all tRPC requests to tell if a request is limited (41abf44)
- pass sessionId to each place a generation is requested (4ffe5b6)
- patch inngest client to allow creation of child loggers (b4a9a50)
- poll for onboarding updates every 300ms instead of 3s (cac0d34)
- put url in asset api, also fix lesson assets (b5b1991)
- quiz designer scrolls on start (6592db3)
- quiz passing back through local (2c5c817)
- re-bump next to v14 (f1f0ff7)
- read prompt templates from the db (665e602)
- redirect from netlify to cloudflare protected subdomain (f1abf0a)
- relayout answers and distractors (2ee0ca1)
- remove icons (ae2c44e)
- render prompts from the db on prompts page (4d5c26c)
- repeatedly poll redis-backed tRPC endpoint for generation updates (7179eb8)
- return an error from useGeneration if we've been polling >1m30s (317bd34)
- return ratelimit info from useGeneration, reorder loading states (9e34b4b)
- save feedback_value when a generation is flagged by a user (f5a382c)
- save formatted prompts as soon as possible (656c5d5)
- save llm completion dimings (5258652)
- schema and migrations (3874ddc)
- script deletes slides based on cycles produced (fcd68f9)
- scripts to import transcripts from lessons (4e81bfb)
- scroll button (e69d43d)
- scroll to start and hide time (d9b0b4c)
- security policy (bba1a77)
- send events from frontend when a user tweaks an item (3f4758f)
- send privacy acceptance to onboarding endpoint (c3e6122)
- send tracking events for manual answer/distractor tweaks (2eb3531)
- share works into gdocs (2fb201c)
- show a more specific error message when a user is rate limited (d191863)
- show error message in quiz designer hero (586c30e)
- show rate limit bypass message based on flag not email (57877c5)
- show status of both jobs and db together (7655467)
- spike integrating useGenerationCallbacks with demo reducer app (1745e3c)
- spike using useReducer to mange quiz app state (c36c318)
- store generation promptInputs (059eff9)
- style the dialog and fix ui on mobile (4af2fc8)
- temporary fix for feature flags (cdb8c86)
- tootips: updated descriptions (14476df)
- track appSession on feedback types (699093a)
- track token usage per generation (67b993c)
- transition through new generation states in inngest job (66b5c7b)
- type-fixes (b01da09)
- un-protect homepage (4a5b142)
- update clerk, use new authMiddleware (d1e28b9)
- update data base field (6d92da1)
- update the text on the lesson planner page (16a09d5)
- update timings endpoint to use statistics table (a4b556a)
- updates button sizing (e9c6fd2)
- user can add suggested question to quiz (57b5570)
- video support (d819d68)
- whats new dialog, currently blank (9c36f95)
- work on refactor, add units, support slugs (2ba7107)
- working scripts (f89b9be)
- working slides + docs export (bad5745)