Changelog
DEVELOPMENT
DEVELOPMENT updates across Upsoma.
Platform Infrastructure
#Auth
Identity, sessions, and access control
- Clearer screens across the app and site
Simpler certificates with sharing in the Issued to card, a daily nudge in your streak card, plainer billing and usage, and a support link on the public site.
- Clear recovery when path generation is busy
Learning-path generation now explains temporary capacity limits and tells you when to retry without consuming your path allowance.
- Quieter learner screens
The pre-check, Ask Upsoma, the plan card and billing say only what you need, and the diagnostic card matches the rest of the app.
- Billing settings stand on their own
The billing settings page no longer carries the legal documents or the feedback form, so it covers your plan and nothing else.
- Consistent job posting identities
Repeated collection of the same job posting now preserves one source identity, preparing reliable evidence for personalised learning paths.
- Clearer plans, insights and profile details
The footer names what is live and what is coming, the promotion banner reads at body size, annual pricing shows its saving, the home page speaks of skill insights, the composer and notifications share the app header, and the profile shows a flag and icon links.
- One source of truth for your plan and balance
The header's plan indicator follows its design, and gated features and balance notes now read the same plan and usage state as the header instead of fetching their own.
- Clearer learning plans and pricing
Upsoma's public website now explains personalized learning more clearly and presents monthly, quarterly, and annual plan options from one shared pricing component.
- Learning that starts with you
Upsoma's public website now explains how each learner's background and goals shape a personal path that adapts as they learn.
- A second pass against the Figma designs
Every frame on the five Figma pages was compared with the app again; the homepage header and footer, onboarding, the career profile and its public page, settings, assessments and the path journeys now match more closely, and every public page is checked at phone and tablet widths.
- Every public page closes on the same card
The homepage and every other public page now end on the same deep-green card, and the homepage's separate open-beta card is gone.
- The roadmap has its own address
A path's roadmap now lives at /roadmap/{path}, separate from its chapters at /paths/{path}, so Back to roadmap and every roadmap link open a page of their own.
- Pages load with far less JavaScript
Every page shipped whole icon libraries and fetched the same path record up to six times when a journey opened. Both are gone, so Home, Paths, chapters and New open faster.
- One onboarding journey
Onboarding now follows one supported journey, using saved progress to resume incomplete setup without falling back to the retired profile flow.
- A consistent Upsoma design across the learning experience
Upsoma now uses its shared brand colors, typography, and logo across the site, with clearer status messages and more accessible controls.
Platform Infrastructure
#Data model
Schema, migrations, and integrity
- Clearer screens across the app and site
Simpler certificates with sharing in the Issued to card, a daily nudge in your streak card, plainer billing and usage, and a support link on the public site.
- Clear recovery when path generation is busy
Learning-path generation now explains temporary capacity limits and tells you when to retry without consuming your path allowance.
- Quieter learner screens
The pre-check, Ask Upsoma, the plan card and billing say only what you need, and the diagnostic card matches the rest of the app.
- Billing settings stand on their own
The billing settings page no longer carries the legal documents or the feedback form, so it covers your plan and nothing else.
- Consistent job posting identities
Repeated collection of the same job posting now preserves one source identity, preparing reliable evidence for personalised learning paths.
- Clearer plans, insights and profile details
The footer names what is live and what is coming, the promotion banner reads at body size, annual pricing shows its saving, the home page speaks of skill insights, the composer and notifications share the app header, and the profile shows a flag and icon links.
- One source of truth for your plan and balance
The header's plan indicator follows its design, and gated features and balance notes now read the same plan and usage state as the header instead of fetching their own.
- Clearer learning plans and pricing
Upsoma's public website now explains personalized learning more clearly and presents monthly, quarterly, and annual plan options from one shared pricing component.
- Learning that starts with you
Upsoma's public website now explains how each learner's background and goals shape a personal path that adapts as they learn.
- Catalogue storage for posting-backed skill evidence
Store canonical roles, discovery domains and distinct supporting job postings for future learning paths.
- Shared skill identities for future learning paths
A shared skill catalogue can match proposed skills without recording them as learner evidence.
- A second pass against the Figma designs
Every frame on the five Figma pages was compared with the app again; the homepage header and footer, onboarding, the career profile and its public page, settings, assessments and the path journeys now match more closely, and every public page is checked at phone and tablet widths.
- Every public page closes on the same card
The homepage and every other public page now end on the same deep-green card, and the homepage's separate open-beta card is gone.
- The roadmap has its own address
A path's roadmap now lives at /roadmap/{path}, separate from its chapters at /paths/{path}, so Back to roadmap and every roadmap link open a page of their own.
- Pages load with far less JavaScript
Every page shipped whole icon libraries and fetched the same path record up to six times when a journey opened. Both are gone, so Home, Paths, chapters and New open faster.
- One onboarding journey
Onboarding now follows one supported journey, using saved progress to resume incomplete setup without falling back to the retired profile flow.
- A consistent Upsoma design across the learning experience
Upsoma now uses its shared brand colors, typography, and logo across the site, with clearer status messages and more accessible controls.
Platform Infrastructure
#Platform infra
Deploy, runtime, routing, and observability
- Learning-path generation now reports durable progress
Accepted learning-path requests can now recover safely and report their saved progress while generation continues.
- Learning-path data now follows account privacy controls
Account exports and deletion now cover saved learning paths, their conversations and generation history.
- Learning paths now save complete outlines safely
Learning-path generation can now build personalised skill and chapter outlines and save them safely as one durable result.
- Learning-path conversations now resume safely
Learning-path discovery can now preserve context across turns and recover safely from retries and worker interruptions.
- A dedicated learning-path conversation agent
Learning-path discovery now has a native, tool-using agent definition ready for backend conversation orchestration.
- Compatible personalised path conversations
Personalised path conversation transport can now move safely between legacy questions and natural agent replies.
- Safe personalised path session rollout
Personalised path conversations now stay protected while native agent support rolls across backend versions.
- Private agent progress and usage signals
Native agents now report reliable progress, timing and token usage without exposing learner prompts or tool data.
- Durable agent conversation memory
Agent conversations can now retain ordered, private history across restarts with safe caching and account deletion.
- Reliable personalised path allowances
Personalised path generation now reserves, renews, consumes and releases path allowances through the existing billing service.
- Reliable catalogue evidence collection
Job-posting evidence collection now stays bounded, retries fairly, and continues through every configured source without delaying the rest of the catalogue.
- Reliable personalised path recovery
Personalised path execution now shares bounded background capacity with onboarding and keeps durable work ready for later agent execution.
- Durable personalised learning paths
Personalised learning paths can now preserve private conversations and complete learning outlines safely across retries.
- Scheduled evidence collection from job postings
Upsoma now collects due job postings directly into the catalogue evidence pipeline without changing the published catalogue.
- Grounded evidence from job postings
Upsoma can now turn retained job-posting text into grounded role, seniority, and skill evidence for the catalogue.
- Model-powered decisions now share one native agent structure
Upsoma's existing model-powered decisions now use clearly named native agents and prompt modules, giving onboarding and skill evidence one consistent execution structure.
- Learner surfaces aligned to the Figma design system
Earned certificates get their seal, code and share link; the roadmap nests chapters inside layer cards behind a segmented List / Map toggle; practice runs on one flat question card; chapter diagrams use the Evergreen palette.
- Admin analytics now show what learners are trying to learn
The admin analytics area shows platform usage, composer queries, user activity, sources, and learning demand signals.
Platform Infrastructure
#Scheduling
Background & scheduled jobs
- Clearer screens across the app and site
Simpler certificates with sharing in the Issued to card, a daily nudge in your streak card, plainer billing and usage, and a support link on the public site.
- Clear recovery when path generation is busy
Learning-path generation now explains temporary capacity limits and tells you when to retry without consuming your path allowance.
- Quieter learner screens
The pre-check, Ask Upsoma, the plan card and billing say only what you need, and the diagnostic card matches the rest of the app.
- Billing settings stand on their own
The billing settings page no longer carries the legal documents or the feedback form, so it covers your plan and nothing else.
- Consistent job posting identities
Repeated collection of the same job posting now preserves one source identity, preparing reliable evidence for personalised learning paths.
- Clearer plans, insights and profile details
The footer names what is live and what is coming, the promotion banner reads at body size, annual pricing shows its saving, the home page speaks of skill insights, the composer and notifications share the app header, and the profile shows a flag and icon links.
- One source of truth for your plan and balance
The header's plan indicator follows its design, and gated features and balance notes now read the same plan and usage state as the header instead of fetching their own.
- Clearer learning plans and pricing
Upsoma's public website now explains personalized learning more clearly and presents monthly, quarterly, and annual plan options from one shared pricing component.
- Learning that starts with you
Upsoma's public website now explains how each learner's background and goals shape a personal path that adapts as they learn.
- A second pass against the Figma designs
Every frame on the five Figma pages was compared with the app again; the homepage header and footer, onboarding, the career profile and its public page, settings, assessments and the path journeys now match more closely, and every public page is checked at phone and tablet widths.
- Every public page closes on the same card
The homepage and every other public page now end on the same deep-green card, and the homepage's separate open-beta card is gone.
- The roadmap has its own address
A path's roadmap now lives at /roadmap/{path}, separate from its chapters at /paths/{path}, so Back to roadmap and every roadmap link open a page of their own.
- Pages load with far less JavaScript
Every page shipped whole icon libraries and fetched the same path record up to six times when a journey opened. Both are gone, so Home, Paths, chapters and New open faster.
- One onboarding journey
Onboarding now follows one supported journey, using saved progress to resume incomplete setup without falling back to the retired profile flow.
- A consistent Upsoma design across the learning experience
Upsoma now uses its shared brand colors, typography, and logo across the site, with clearer status messages and more accessible controls.
Platform Infrastructure
#Notification infra (email)
Transactional & lifecycle email
- DEVELOPMENTplatform/onboarding-authSkill TelemetryAdaptive LearningContent consumption / Learning & Adaptation+1Safer onboarding and login delivery
Onboarding submissions and sign-in links now remain reliable during retries, concurrent requests, and rolling deployments.
Core learning subsystems
#Canonical catalogue
Reusable skill, role, and domain identities
- Consistent job posting identities
Repeated collection of the same job posting now preserves one source identity, preparing reliable evidence for personalised learning paths.
- The skill browser sidebar now uses categorized expandable domains
The browse sidebar now groups domains into expandable categories and keeps one tree open at a time.
- Admin analytics now show what learners are trying to learn
The admin analytics area shows platform usage, composer queries, user activity, sources, and learning demand signals.
Core learning subsystems
#Skill Telemetry
Evidence → signals → the learner overlay
- DEVELOPMENTplatform/onboarding-authSkill TelemetryAdaptive LearningContent consumption / Learning & Adaptation+1Safer onboarding and login delivery
Onboarding submissions and sign-in links now remain reliable during retries, concurrent requests, and rolling deployments.
- Admin analytics now show what learners are trying to learn
The admin analytics area shows platform usage, composer queries, user activity, sources, and learning demand signals.
Core learning subsystems
#Adaptive Learning
Catalogue + overlay → an ordered path that shortens as you learn
- Compatible personalised path conversations
Personalised path conversation transport can now move safely between legacy questions and natural agent replies.
- DEVELOPMENTplatform/onboarding-authSkill TelemetryAdaptive LearningContent consumption / Learning & Adaptation+1Safer onboarding and login delivery
Onboarding submissions and sign-in links now remain reliable during retries, concurrent requests, and rolling deployments.
Core learning subsystems
#Content consumption / Learning & Adaptation
Reading, tutoring, and the path adapting to performance
- DEVELOPMENTplatform/onboarding-authSkill TelemetryAdaptive LearningContent consumption / Learning & Adaptation+1Safer onboarding and login delivery
Onboarding submissions and sign-in links now remain reliable during retries, concurrent requests, and rolling deployments.
Core learning subsystems
#Assessment & Evaluation
Readiness snapshots, skill verification, and the eval gate
- Assessment history now uses the shared browse-sidebar pattern
Assessment mode now presents recent assessments with the same compact sidebar pattern used by the skill browser.