Skip to content

Commit e330b4e

Browse files
AmmarSaleh50claude
andcommitted
Release 0.2.0: single-file README w/ language toggle + CHANGELOG
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 5032f52 commit e330b4e

3 files changed

Lines changed: 300 additions & 239 deletions

File tree

CHANGELOG.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,68 @@ All notable changes to study-dashboard will be documented here.
44
Format loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
55
versions follow [SemVer](https://semver.org/spec/v2.0.0.html).
66

7+
## [v0.2.0] — 2026-04-20
8+
9+
Rename pass: the project is now English-canonical from the database up through
10+
the MCP tool names. Migrations moved to `supabase/migrations/` so the Supabase
11+
CLI tracks them properly. If you're upgrading an existing deploy, see the
12+
upgrade notes below — pushing `main` won't fix your schema on its own.
13+
14+
### Breaking
15+
- **MCP tools renamed.** `list_klausuren``list_exams`, `update_klausur`
16+
`update_exam`. `upsert_schedule_slot``create_schedule_slot` (signature
17+
is a pure create now; use `update_schedule_slot` to patch). `now_berlin`
18+
removed — use `now_here`. Any cached tool lists in Claude.ai / Claude Code
19+
will need to re-fetch after the push.
20+
- **DB schema.** Table `klausuren` renamed to `exams`. Columns
21+
`courses.klausur_weight` / `klausur_retries` renamed to `exam_weight` /
22+
`exam_retries`.
23+
- **Enum values.** Slot / lecture kinds moved from
24+
`Vorlesung|Übung|Tutorium|Praktikum` to `lecture|exercise|tutorial|lab`.
25+
Study-topic kinds from `vorlesung|uebung|reading` to
26+
`lecture|exercise|reading`. Deliverable kinds from
27+
`abgabe|project|praktikum|block` to `submission|project|lab|block`. Legacy
28+
German values are still accepted at the API boundary via a Pydantic
29+
`BeforeValidator` and normalised on the way in — existing MCP integrations
30+
keep working.
31+
- **Migration location.** `db/migrations/``supabase/migrations/` with
32+
timestamp-based filenames.
33+
34+
### Added
35+
- Single-file README with a same-page `<details name="lang">` language
36+
toggle — click 🇬🇧 English or 🇩🇪 Deutsch, the other collapses.
37+
- New migration `20260420000001_english_canonical_kinds.sql` that normalises
38+
existing German values + renames the table/columns on upgrade.
39+
- FastMCP server-level `instructions` — mental model of the domain, enum
40+
conventions, and orient-before-you-act guidance injected on every
41+
`initialize`.
42+
43+
### Changed
44+
- Every MCP tool description rewritten with "when to use / when NOT to use"
45+
disambiguation plus sibling pointers. Goal: Claude picks the right tool
46+
first try instead of listing + retrying. Tool count down from 46 → 44.
47+
- UI: hardcoded German strings replaced with English (slot-kind selects,
48+
deliverable-kind selects, sidebar `Klausuren``Exams`, /klausuren →
49+
/exams, etc.). Displayed kind strings pick up a `capitalize` class for
50+
polish.
51+
- `INSTALL.md` §4 rewritten around `supabase db push` with an upgrade flow
52+
for existing DBs (`supabase migration repair --status applied …`) and a
53+
dashboard-SQL-editor fallback.
54+
55+
### Upgrade from v0.1.0
56+
57+
```bash
58+
git pull origin main
59+
npx supabase link --project-ref YOUR-PROJECT-REF
60+
# If you applied 0001–0004 via the SQL editor, mark them applied first:
61+
npx supabase migration repair --status applied 20260101000001 20260115000001 20260201000001 20260301000001
62+
npx supabase db push # applies the English-canonical migration
63+
```
64+
65+
Then rebuild the frontend (`cd web && pnpm install && pnpm build`) and redeploy.
66+
67+
[v0.2.0]: https://github.com/AmmarSaleh50/study-dashboard/releases/tag/v0.2.0
68+
769
## [v0.1.0] — 2026-04-20
870

971
First public release. A self-hostable personal study dashboard with an MCP

0 commit comments

Comments
 (0)