Conversation
kabaros
marked this pull request as draft
September 14, 2026 08:42
kabaros
force-pushed
the
modernise-skill
branch
from
September 14, 2026 15:42
7bf399f to
e31f538
Compare
Covers two independent modernisation tasks for existing DHIS2 apps: migrating the package manager from Yarn to pnpm, and moving off @dhis2/cli-style onto the shared @dhis2/config-* packages (eslint, prettier, stylelint, ls-lint, commitlint -- whichever the app already had configured), plus a non-breaking @dhis2/ui version bump. Removes @dhis2/cli-style only once every config it was proxying has a real replacement. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…esh step Adds a third independent modernisation task -- moving bespoke GitHub Actions workflows onto dhis2/workflows-platform reusable workflows and bumping outdated actions/Node versions -- documented in the new references/ci-migration.md, including the known gap where lint.yml/lint-commits.yml/lint-pr-title.yml internally require @dhis2/cli-style and the pnpm-no-cli-style branch that fixes it. Also adds a README-refresh step to the pnpm migration (pnpm badge, an App Hub-sourced app description matched by d2.config.js's id, and a concise "Get Started" section replacing the scaffold's verbose per-script "Available Scripts" layout), extends the platform-library bump step to cover @dhis2/app-runtime and @dhis2/d2-i18n alongside @dhis2/ui (non-breaking by default, with an explicit choice offered if latest would cross a major), and extends the eval suite with dedicated CI-migration fixtures (a real app-management-app snapshot and a synthetic one to avoid the confound of a baseline agent finding an already-fixed real repo to copy). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
kabaros
force-pushed
the
modernise-skill
branch
from
September 16, 2026 16:28
e31f538 to
69793fc
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
implements https://dhis2.atlassian.net/browse/LIBS-866
Adds a new
modernise-appsskill for bringing existing DHIS2 apps up to date, covering five things an app can need any combination of, or none:cli-app-scripts, converts the lockfile, and fixes the phantom-dependency issues Yarn 1's flat hoisting used to hide.@dhis2/cli-style→ shared configs — replacesd2-stylewith the new@dhis2/config-*packages (eslint, prettier, stylelint, ls-lint, commitlint — whichever the app already had configured) and moves git hooks to native husky/lint-staged.@dhis2/ui,@dhis2/app-runtime, and@dhis2/d2-i18n. Non-breaking (current major) by default for each; iflatestwould cross a major for any of them, that's treated as an explicit decision rather than taken silently.dhis2/workflows-platformreusable workflows wherever one exists, and bumps outdated actions and the Node version in whatever stays custom. Also documents a real gap:workflows-platform'slint.yml/lint-commits.yml/lint-pr-title.ymlinternally depend on@dhis2/cli-style(even on the@pnpmbranch), so an app that's migrated offcli-styleneeds a custom commitlint step — or thepnpm-no-cli-stylebranch, once published — instead of adopting those three as-is.Each task ends with an install/build/lint pass, plus an optional opt-in e2e sanity check that boots the app against a real DHIS2 server and confirms it still renders after login.
Includes 10 evals (scaffolded + real-app fixtures, individual and combined, plus dedicated CI-migration fixtures) comparing with-skill vs. baseline agent runs.
Test plan
npx skills add /path/to/ai-devtools --skill modernise-apps -yagainst a real Yarn/cli-styleapp and confirm all tasks complete cleanlysrc/skills/modernise-apps-workspace)