fix(dashboard): lesson nav build error and add CI build check (#765)

* fix(dashboard): repair lesson nav build and improve locked feedback

Replace stale $isOrgStudent reference with isCourseLearnerView to fix
the Svelte build error. Disable prev/next when the adjacent item is
locked, show lock tooltips, and surface a snackbar if navigation is
blocked (including keyboard shortcuts).

Co-authored-by: Rotimi Best <[email protected]>

* ci: add package build check and AGENTS.md verification steps

Document required dashboard/API build commands for agents and add a
GitHub Actions workflow that runs those builds on PRs touching apps or
packages. Copy dashboard .env.example in CI so vite build has required
public env vars.

Co-authored-by: Rotimi Best <[email protected]>

---------

Co-authored-by: Cursor Agent <[email protected]>
Co-authored-by: Rotimi Best <[email protected]>
This commit is contained in:
Rotimi Best
2026-07-16 12:34:03 +01:00
committed by GitHub
co-authored by Rotimi Best Cursor Agent
parent 3ef286ed39
commit ca3fdd5b6a
3 changed files with 108 additions and 11 deletions
+23
View File
@@ -20,6 +20,29 @@ When a task requires factual information (API specifications, context window siz
- Commit messages must follow the Conventional Commits 1.0.0 spec: https://www.conventionalcommits.org/en/v1.0.0/
- Never include agent-provider attribution in commits or commit trailers. Do not add `Co-authored-by` lines for Cursor, Claude, Codex, or any other tool.
## Verification before commit/PR
Before committing or opening/updating a PR, run the build checks that match the areas you changed. Use Node 20 (the repo's `.nvmrc` version):
```bash
export PATH="$HOME/.nvm/versions/node/v20.19.3/bin:$PATH"
```
- **Dashboard changes** (`apps/dashboard/**`, or shared packages consumed by the dashboard):
```bash
test -f apps/dashboard/.env || cp apps/dashboard/.env.example apps/dashboard/.env
pnpm --filter @cio/dashboard^... build && pnpm --filter @cio/dashboard build
```
- **API changes** (`apps/api/**`, or shared packages consumed by the API):
```bash
pnpm --filter @cio/api^... build && pnpm --filter @cio/api build
```
Also run `pnpm format:check` (see Translation, Formatting, and Git Workflow above). Do not commit if any verification step fails.
## Naming Convention
- Use kebab-case for files (e.g. `user-profile.svelte`, `org.svelte.ts`).