Skip to content

refactor(resources): rename the "My Work" shell to "Personal" (#6611) - #6612

Merged
delchev merged 3 commits into
masterfrom
rename/personal-shell
Aug 7, 2026
Merged

refactor(resources): rename the "My Work" shell to "Personal" (#6611)#6612
delchev merged 3 commits into
masterfrom
rename/personal-shell

Conversation

@delchev

@delchev delchev commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Fixes #6611. Every shell on platform-shells now carries a single-word label.

before after
module components/resources/resources-my components/resources/resources-personal
artifactId dirigible-components-resources-my dirigible-components-resources-personal
served folder / URL /services/web/my/ /services/web/personal/
shell id myShell personalShell
shell label My Work Personal
nav group id: 'my' / My Work id: 'personal' / Personal

The nav group and the groupId the Harmonia template stamps into every generated personal perspective (ui/my/my-perspective.js.template) move in lockstep — a perspective whose groupId matches no group definer is silently dropped by the perspectives service.

Callers that had to move with it: the Applications shell's act-as redirect (resources-application/.../appShell.js), the Home page's ICONS/DESCRIPTIONS fallback maps (keyed by shell id — a stale key degrades silently to a generic icon and an empty description) and its prose, and IntentEmissionCoverageIT's shell-URL assertion.

The shell title now resolves through a real key — shell.nav.personal, added to the en-US and bg-BG application-core catalogs. The previous shell.nav.myWork did not exist in either catalog and always fell through to its literal. The renamed group config also gains the EPL header its siblings carry (it had none).

Unchanged on purpose: the extension point application-personal-perspectives is already named "personal"; and the generated app's own personal routes (#/my/<Entity>), its views/my/ + pages/my/ folders and its "My <Entity>" page titles stay — "My Claims" is the right label for a per-user page inside an app, and renaming those would ripple through the shell template and ~20 emission-IT assertions for no user-visible gain.

Verification

On a running instance built from this branch:

/services/web/personal/index.html  -> 200, <title>Personal</title>
/services/web/my/index.html        -> 404
platform-shells                    -> applicationShell/Applications, personalShell/Personal,
                                      partnerShell/Partner, adminShell/Administration,
                                      shellIde/Workbench, dashboardShell/Dashboard
application-personal-perspectives  -> group { id: "personal", label: "Personal", items: [] }
locales (application-core)         -> shell.nav.personal present

IntentEmissionCoverageIT green (intent generate → publish → the shell page is served and aggregates the published personal perspective), reactor -P quick-build green, mvn -T 1C formatter:validate clean.

🤖 Generated with Claude Code

delchev and others added 3 commits August 7, 2026 20:30
Every other shell on platform-shells carries a single-word label - Applications,
Partner, Administration, Workbench, Dashboard - so the personal one becomes
"Personal" and its module, served folder, shell id and navigation group follow
the same word:

  resources-my                  -> resources-personal
  dirigible-components-resources-my -> ...-resources-personal
  /services/web/my/             -> /services/web/personal/
  myShell                       -> personalShell
  group id 'my' / "My Work"     -> 'personal' / "Personal"

The navigation group and the groupId that the Harmonia template stamps into
every generated personal perspective move in lockstep: a perspective whose
groupId matches no group definer is silently dropped by the perspectives
service, so the two halves can never be renamed apart.

Cross-module callers updated with it: the Applications shell's act-as redirect,
the Home page's icon/description fallback maps (keyed by shell id, a stale key
degrades silently to a generic icon and no description) and its prose, and the
IntentEmissionCoverageIT assertions on the shell URL.

The shell title now resolves through a real i18n key - shell.nav.personal, added
to the en-US and bg-BG application-core catalogs; the previous
shell.nav.myWork never existed and always fell through to its literal.

Unchanged on purpose: the extension point application-personal-perspectives is
already named "personal", and the generated app's own personal routes
(#/my/<Entity>), its views/my/ + pages/my/ folders and its "My <Entity>" page
titles stay - "My Claims" is the right label for a per-user page inside an app.

Verified on a running instance: /services/web/personal/index.html serves the
shell titled "Personal", the old /my/ path 404s, platform-shells lists
personalShell/"Personal" alongside the other single-word shells, and the
personal perspective group resolves as id 'personal'. IntentEmissionCoverageIT
(generate -> publish -> shell aggregates the personal perspective) is green.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
# Conflicts:
#	components/resources/resources-home/src/main/resources/META-INF/dirigible/home/js/home.js
@delchev
delchev merged commit 894af81 into master Aug 7, 2026
3 checks passed
@delchev
delchev deleted the rename/personal-shell branch August 7, 2026 19:15
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.

resources: rename the "My Work" shell to "Personal" (single-word name for every shell)

1 participant