Releases: JikoSchnee/Study-Desk
Release list
v1.7.1
本次更新
-
ea54cf2chore(release): bump version to 1.7.1 -
50e2ec8docs(supabase): consolidate setup and history guidance
Provide one repeatable initialization script and document Magic Link, encrypted session renewal, shared retention settings, and history recovery.
04e6684feat(settings): manage cloud sync from one panel
Add shared sync preferences, mutually exclusive provider switches, Supabase history and restore controls, stateful sidebar feedback, and README help anchors.
9f8df75feat(sync): add secure Supabase scheduling
Add persistent automatic sync scheduling, history retention support, Magic Link desktop session handling, and encrypted refresh-token rotation. Expired sessions now clear safely and return a re-login prompt instead of raw JWT errors.
3b7f27bdocs(sync): document WebDAV and Supabase setup
Document provider setup, email OTP templates, RLS migration, and cross-device sync guidance.
a7f5420feat(sync): add Supabase account synchronization
Add OTP account sync with RLS-backed snapshots, secure desktop session storage, mutually exclusive sync controls, and improved desktop development startup.
126e003feat(webdav): add guided self-hosted setup
Provide an interactive WebDAV setup script and validation command for self-hosted sync deployments.
v1.7.0
本次更新
-
3db16e0chore(release): bump version to 1.7.0 -
fb1aa0bfeat(settings): organize sync controls and preferences
Group settings into navigable sections, surface desktop cloud-sync status, and document shared WebDAV setup.
-
f2f0315fix(deploy): read setup prompts from terminal -
16c1ed6feat(sync): add self-hosted WebDAV synchronization
Add encrypted desktop credentials, automatic snapshot merge, and a one-command Docker WebDAV deployment path.
4a900f4feat(mcp): add agent learning integration
Expose Study Desk cards, reviews, and interviews through a local MCP server with confirmation and idempotency safeguards. Add an Agent MCP guide and surface it from Settings.
v1.6.5
本次更新
-
1252dcfchore(release): bump version to 1.6.5 -
3853aacfeat(branding): rename app to Study Desk
Align the sidebar, web metadata, Electron window, and local configuration label with Study Desk. Show the package version below the sidebar title.
-
b564f1cchore: ignore Finder metadata -
c5c1406docs(mcp): add Study Desk integration design
Document the local stdio MCP architecture, read/write safety boundaries, schemas, and phased implementation plan.
ab48a2afix(desktop): route network requests through Electron
Load the Next utility process with an Electron net.fetch bridge and the default session so Windows system proxy and PAC policies apply to service requests. Add layered Electron and service diagnostics with actionable failure guidance.
fc6bc3ffeat(planner): use a rolling daily task window
Carry unfinished work into subsequent days, preserve tasks completed today when restarting, and trim the newest pending tasks back to each daily target.\n\nTrack task completion times so dashboard progress and reports use the actual completion day.
v1.6.4
本次更新
-
93dbf09chore(release): bump version to 1.6.4 -
78f4798feat(reports): open single-card learning details
Make completed daily-report card entries open their learning details, including practice history and answer feedback.
d8eba31feat(review): add extra first-study sessions
Allow completed first-study plans to append one unplanned new card at a time, include it in today's progress, and invalidate completed reports until the added task is finished.
8590b2efix(review): sync guided queues after plan restart
Read first-study and due-review progress from today's generated tasks, and discard cached review sessions after restarting the plan.
eb60711fix(desktop): honor Windows system proxy
Resolve the Electron system proxy before starting the Next utility process so diagnostics, AI requests, and model downloads use the configured Windows network route.
v1.6.3
本次更新
-
6fad5bdchore(release): bump version to 1.6.3 -
bf82264feat(settings): add network diagnostics
Add an in-app test that distinguishes baseline connectivity from GitHub and Hugging Face access, with actionable DNS, TLS, timeout, connection, and HTTP results.
cb73690feat(settings): add preference help tooltips
Add focusable question-mark tooltips for all learning preference labels and keep explanations out of the form layout.
615ac42fix(review): reset session progress with daily plan
Count completed study and review items from today's restartable plan so a plan restart resets session progress without deleting learning history.
e13c8e2feat(reports): add retained daily learning summaries
Persist a daily report once planned learning and review are complete, show it from the home page and calendar, and let learners choose how long report details are retained without affecting card history.
0868474perf(review): avoid repeated evaluation on rating
Reuse the server-side evaluation while the learner selects a rating, skip unchanged first-study card saves, and schedule backups after responses so advancing is not blocked by model inference or backup I/O.
61790a5fix(tags): classify new card labels by language
v1.6.2
本次更新
-
40db418chore(release): bump version to 1.6.2 -
2d36ed3fix(cards): stabilize tilt hover bounds
Keep card tilt active within the bounds captured on pointer entry so transform-driven hit testing cannot repeatedly reset and re-enter the hover state.
91c612ffeat(backup): add configurable automatic backups
Add desktop-local automatic backup scheduling, storage limits, and settings controls.\n\nTrigger backups after persisted training data changes and preserve unrelated manual backup flows.
cc880d2feat(updates): show release reports on web
Render release notes as safe GFM Markdown and fetch the latest GitHub Release for the web settings page.
c9feb26feat(settings): embed online README
Add a settings entry and accessible dialog that loads the latest repository README through a timeout-protected API and renders safe GFM Markdown.
f9455a1fix(planner): prevent duplicate daily tasks
Only fill the remaining learning and review slots when the dashboard regenerates today's plan. Add regression coverage for repeated plan loading.
-
fa32851refactor(hooks): satisfy exhaustive dependencies -
862c2d6fix(embedding): preserve ready status for downloaded models
Align bge-m3 readiness checks with the files written by automatic downloads, and cover recovery after a server restart.
v1.6.1
本次更新
-
148a9cdfix(desktop): run electron rebuild portably -
0cfa341chore(release): bump version to 1.6.1 -
19adfa3refactor(settings): centralize local API error handling -
47d9be9fix(knowledge-base): move source file selection into workspace -
b5fcaf8fix(desktop): configure knowledge base and degrade Windows speech -
82ac323fix(desktop): verify packaged SQLite ABI
Rebuild and exercise better-sqlite3 under Electron, then gate standalone and packaged builds with API smoke checks.
Normalize local API failures so dashboard and card requests receive actionable JSON errors instead of HTML parsing failures.
Test: npm run lint; npm test; npm run build; npm run desktop:build; electron-builder --mac --arm64 --dir --publish never
2b5ec60fix(updates): preserve and contain version reports
Keep update reports across app restarts, dismiss only the floating prompt, and constrain release notes within the settings panel.
v1.6.0
本次更新
-
5da94dachore(release): bump version to 1.6.0 -
ce5764bfeat(study): refine planning and learning controls -
1cc86ddfix(review): honor updated launch queue -
75fcc39feat(library): rename card library to collection -
6889a0efix(review): honor today queue launch targets
Load the requested learning or review queue from Today while retaining the active session when it already matches.\n\nTest:\n- npx tsc --noEmit\n- npm test -- --run src/app/api/review/next/route.test.ts src/app/api/review/queue/route.test.ts
a88629efeat(review): refine in-session card editing
Keep full card editing in the learning view, save inline study notes before completion, and clarify progress, tags, and exit controls.\n\nTest:\n- npx tsc --noEmit\n- npm test -- --run src/lib/review.test.ts src/app/api/review/study/route.test.ts
c5de2f3feat(review): stream learning assistant replies
Add streamed assistant output, preserve its panel state, and refine the responsive drawer interaction.\n\nTest: npm test -- --run src/app/api/review/chat/route.test.ts src/lib/ai.test.ts
06d4670feat: improve learning and desktop resilience
What changed:
- streamline initial learning and preserve in-app page state
- add AI learning chat and related card drafting
- harden desktop update, service status, and model download behavior
Test:
-
npx tsc --noEmit
-
npm test -- --run src/lib/review.test.ts src/app/api/review/study/route.test.ts
-
npm run build
-
555a14bfix(library): replace bulk edit prompts
Use an in-app dialog for bulk tag and type changes, with persistent error feedback for failed requests.
73b3ff7feat(cards): add knowledge base type tags
Keep each card discoverable by its current knowledge-base type across manual, imported, and bulk updates.
62237f7fix(tags): preserve typed value on Enter
Require explicit keyboard navigation or a click before choosing a matching tag suggestion.
27ab0dcfeat(cards): remember last manual knowledge base type
Reuse the last successfully saved type for new and cleared manual card drafts.
v1.5.7
本次更新
-
b5ed3d5chore(release): bump version to 1.5.7 -
4bea28ffix(desktop): harden local model setup
Keep local API failures within JSON responses and make bge-m3 downloads cancellable, time-bounded, and removable from Settings.
713be0ffix(desktop): recover local server after sleep
Restart the embedded Next server when it exits unexpectedly and verify it on macOS wake. Reuse the original port so the active renderer and draft can continue using relative API requests.
a350eb9fix(home): disable unavailable interview entry
Mark the home-page mock interview action as unavailable and show a disabled indicator on hover.
799d6bafix(library): keep archive filters accessible
Keep the card filters visible for empty results and provide a return path from an empty archive view.
976c332fix(updater): retain manual update status
Persist the current update result for the app session so it remains visible after returning to settings.
b6ab0aafeat(updater): keep update notices across pages
Check for updates when the desktop app starts and keep available release notes visible while navigating between pages.
4811009feat(updater): show release notes for new versions
Display the latest release notes beneath the new-version prompt and safely render supported HTML content.
v1.5.6
本次更新
-
f553d7efix(environment): resolve persisted settings path at runtime -
6f8ee68chore(release): bump version to 1.5.6 -
7dafc23feat(cards): add infinite library loading
Paginate filtered card queries and load 20 cards at a time as the library reaches its sentinel. Add a fixed top navigation control that returns to the reader's prior scroll position, while keeping the relationship picker fully searchable.
-
41aed6ffix(cards): persist answer points when editing cards -
cd4ef47fix(ai): restore persisted model settings after restart -
c64d077feat(settings): add offline bge-m3 model setup
Add a complete local ZIP import flow for bge-m3 and persist the selected automatic or offline model source. Reorganize and standardize the settings page around the new model controls.
Test: npm test -- --run src/lib/settings.test.ts src/lib/answer-comparison.test.ts; npm run lint; npm run build