diff --git a/docs/devops/GITEA_NPM_REGISTRY_MIGRATION.md b/docs/devops/GITEA_NPM_REGISTRY_MIGRATION.md index 8f5b2cd8..b9d0329c 100644 --- a/docs/devops/GITEA_NPM_REGISTRY_MIGRATION.md +++ b/docs/devops/GITEA_NPM_REGISTRY_MIGRATION.md @@ -616,3 +616,29 @@ This migration plan is locally validated only when all are true: 11. ~~remove stale common-plat build step from CI workflows~~ ✅ **Migration completed 2026-03-24. All 10 product repos now consume `@bytelyst/*` packages from the local Gitea npm registry.** + +--- + +## 16. Post-Migration Audit (2026-03-24) + +After the initial migration was marked complete, a systematic audit was run across all 10 repos. 5 bugs/gaps were found and fixed: + +| # | Finding | Severity | Fix | Repo | +|---|---------|----------|-----|------| +| 1 | FlowMonk `mobile/package.json` had 6 stale `file:` refs | **BUG** | Converted to `^0.1.0` + regenerated lockfile | `learning_ai_flowmonk` | +| 2 | MindLyst had 3 stale `package-lock.json` files (npm artifact, pnpm doesn't use them) | **BUG** | Deleted all 3 | `learning_multimodal_memory_agents` | +| 3 | MindLyst missing `.dockerignore` | **GAP** | Created with proper exclusions (node_modules, .next, dist, KMP build dirs) | `learning_multimodal_memory_agents` | +| 4 | MindLyst CI workflow had stale "Build @bytelyst/* packages" step + used npm instead of pnpm | **BUG** | Removed step, added `pnpm install`, switched to `pnpm --filter` | `learning_multimodal_memory_agents` | +| 5 | LysnrAI CI workflow had stale "Build @bytelyst/* packages" step | **BUG** | Removed step, added `pnpm install` | `learning_voice_ai_agent` | + +### Dead file sweep — confirmed clean + +- `docker-prep.sh` — removed from all 10 repos ✅ +- `.docker-deps/` dirs — none tracked ✅ +- `*.tgz` tarballs — none tracked ✅ +- `package-lock.json` — none tracked (all pnpm repos) ✅ +- jfrog refs in Dockerfiles — intentional for corp proxy, not dead ✅ + +### Lesson learned + +Mobile workspace members (FlowMonk, NomGap, NoteLett) that were previously insulated from the `file:` → registry change because their lockfiles still resolved transitively will break when the lockfile is regenerated. Always run `GITEA_NPM_TOKEN=... pnpm install --no-frozen-lockfile` after converting mobile `package.json` refs.