Skip to content

Implement learner-record platform slice and role-aware workspace shell#180

Merged
Cataldir merged 2 commits intomainfrom
feat/learner-record-workspace-shell
Apr 9, 2026
Merged

Implement learner-record platform slice and role-aware workspace shell#180
Cataldir merged 2 commits intomainfrom
feat/learner-record-workspace-shell

Conversation

@Cataldir
Copy link
Copy Markdown
Contributor

@Cataldir Cataldir commented Apr 9, 2026

Purpose

  • Implement the learner-record platform slice across backend, infra, frontend, and docs.
  • Add normalized access-context and learner-record projection contracts for configuration and insights services.
  • Introduce hybrid learner-record publication with Cosmos as the authoritative store and Service Bus as the distribution seam.
  • Reframe the frontend around role-aware workspace routes, public trust/program pages, and calmer workspace-aligned UI.
  • Document the new architectural direction with ADRs and supporting brief/backlog/risk/UX artifacts.

Does this introduce a breaking change?

[ ] Yes
[x] No

Pull Request Type

What kind of change does this Pull Request introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[x] Documentation content changes
[ ] Other... Please describe:

How to Test

  • Get the code
git clone https://github.com/Azure-Samples/tutor.git
cd tutor
git checkout <branch-name>
  • Test the code
pytest tests/configuration/test_configuration_api.py tests/insights/test_insights_api.py
cd frontend && pnpm lint

What to Check

Verify that the following are valid

  • /access-context returns normalized roles, grants, contexts, and feature flags for local-dev headers.
  • Insights workspace snapshot and learner-record endpoints return the new trust/freshness/timeline shapes.
  • Frontend workspace routes render role/context-aware shells without duplicate key warnings.
  • Essay and workspace shell UI follow the calmer, sober design language.
  • Terraform outputs include learner-record and Service Bus values required by the slice.
  • ADRs and strategy docs reflect the learner-record-centered platform direction.

Other Information

  • Local validation completed with targeted pytest coverage and frontend lint.
  • This PR is intended to close the linked issue for the learner-record/workspace shell platform slice.

{/* <!-- Dropdown End --> */}
<div className="mt-4 flex flex-col gap-2">
<Link
href={workspaceHref}
<DarkModeSwitcher />
</ul>
<Link
href={`/workspace/${currentRole}`}
<div className="flex w-full items-center gap-4 px-4 py-3 md:px-6">
<div className="flex items-center gap-3">
<Link
href={`/workspace/${currentRole}`}
@Cataldir Cataldir merged commit b1b0095 into main Apr 9, 2026
9 checks passed
@Cataldir Cataldir deleted the feat/learner-record-workspace-shell branch April 9, 2026 00:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants