From 31d766c4b90953cca9ac55c80e2daf552599d9ef Mon Sep 17 00:00:00 2001 From: Lucie Germain <116178070+lucie-germain@users.noreply.github.com> Date: Tue, 18 Aug 2026 10:13:39 +0200 Subject: [PATCH] Migrate services/web/scripts/{plan-prices,translations,ukamf} off npm (#36594) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Migrate services/web/scripts/{plan-prices,translations,ukamf} off npm Three more of the last standalone npm projects in the repo (own package-lock.json, no automated Dependabot fix path): - plan-prices and ukamf fold into the root Yarn workspace (own package.json, no lockfile), same pattern as jobs/wiki-algolia. ukamf was missing a "name" field (required for a workspace member) and relied on moment/lodash/xml2js being available as phantom dependencies via web's node_modules; under PnP that no longer works, so they're now declared explicitly, matching the versions already used by services/web. - translations stays standalone (own yarn.lock, packageManager field, node-modules linker) because its Dockerfile builds an isolated "onesky-client-jail" sandbox image with deliberately restricted filesystem access — not a good fit for pulling in the whole monorepo's PnP install. Its Dockerfile now installs via corepack yarn instead of npm ci. Updated the plan-prices README and the two dev-manual docs that referenced running these scripts with plain `node`/`npm install`. Also trimmed the now-stale "a few helpers still use npm" line from security-triage's security-context.md (wiki-algolia was already migrated; this covers the rest, translations still gets its own yarn.lock note). checkSanitizeOptions.js surfaces a handful of pre-existing allowlist/locale mismatches unrelated to this migration (recently added tags like and aren't in sanitize.js's allowedTags) — flagging but not fixing, out of scope here. Co-Authored-By: Claude Sonnet 5 * Fix stale ukamf install/run instructions per Copilot review metadata-processor.js/check-certs.js/check-idp-metadata.js's doc comments and developer-manual's institutional-sso-configuration.md still told people to `npm install`/`yarn install` inside scripts/ukamf and run the scripts with plain `node`. Now that ukamf is a root Yarn workspace member, that install step doesn't do anything and plain `node` won't resolve PnP-managed deps. Switch both to `bin/yarn install` (repo root) + `bin/yarn workspace ukamf-scripts node