
The problem Keeping a codebase current is one of the most postponed jobs in software. Dependency tools like Dependabot tell you a new version exists and bump the number, but they don't tell you what that bump breaks. For a major upgrade, a developer still has to read the migration guide, find every affected call site, rewrite them, run the tests, and prove nothing regressed. For libraries like pydantic (v1 to v2) or the OpenAI SDK (v0 to v1), that's hours of error-prone work per repository. So teams defer it, and the debt grows until a security advisory or a broken build forces the issue. Our sample app shows the gap: upgrading the pins alone raises the dependency health score from 53 to 90 and breaks 30 of 33 tests. The version bump looks like progress. It isn't. The solution Changewise turns "a new version exists" into a finished, proven migration: 1. Discover and assess: read the manifests, check PyPI for latest versions and the OSV database for vulnerabilities. 2. Understand: fetch the release notes between the pinned and latest version and locate every place the code uses that library. 3. Context packs: one document per dependency with what changed, why it matters, and where it hits this codebase. 4. Plan and fix: IBM Bob reads the packs and migrates the application code. 5. Verify and prove: Changewise runs the tests at each stage and generates a migration receipt per dependency with versions, reason, affected code, before/after changes, and test results. Measured result - Tests: 33/33 before, 3/33 after the version bump, 33/33 after migration - Runtime dependency score: 53 to 90 - pydantic 1.10.21 to 2.13.5, openai 0.28.1 to 1.97.1, fastapi 0.99.1 to 0.115.14, cryptography 38.0.4 to 50.0.1 (23 known vulnerabilities in the old version) - 0 test files modified: the tests stayed untouched as independent proof Why it matters The receipt is the product. Reviewers don't have to trust that an AI "probably fixed it"; they see exactly what changed, why, and that the unmodified test suite passes. That turns upgrades from something teams dread into something they can do routinely. Next: npm, Go and Maven adapters, and a GitHub Action that files one issue per context pack for any coding agent to pick up.
27 Sep 2026