The Kubernetes Migration Problem for 30-Year-Old Code

▶ Watch (0:02)

A 30-year-old Enterprise Java Bean lands on your desk. Your manager wants it running on Kubernetes. The protocol layer shows stubs, serialization, and clustering failures. The Konveyor project exists to solve that. It runs static code analysis on the source, maps offending lines to migration guidelines, and surfaces remedies, telling developers which components need reconfiguration for a containerized platform. The analysis engine understands Java and Golang and ties into the Language Server Protocol to trace code paths and apply fix rules.

Static Analysis Plus LLM Context Engineering Generates Real Patches

▶ Watch (1:54)

Over the last six months, Konveyor added C, Golang, Python, and Node.js to its analysis engine. The workflow feeds static analysis incidents, line by line, into an LLM using context engineering. The model returns meaningful migration code, not general chat output. In the demo, an RMI/IIOP method, a protocol few developers still recognize, came back as a REST endpoint with a full git patch. The tool pinpoints which lines are offensive (incompatible with Kubernetes) and generates configuration hints such as secrets and config maps.

Agentic Cascading Fixes and Org-Wide Memory

▶ Watch (3:41)

Fixing one incident in a legacy codebase breaks other things. Konveyor’s agentic mode handles that. The agent receives an incident, applies a fix, then runs compilation, validation, and tests to find what broke next. It keeps fixing until the codebase is clean. Released alongside agents six to eight months ago, the distributed memory feature records developer edits made in the IDE. If a developer changes the exception handling in a generated fix, that preference is stored. Every future generation for the same pattern across the organization inherits the override.

Notable Quotes

generative AI, not just chatting around Shaaf Syed · ▶ 03:20

everybody has agents these days Shaaf Syed · ▶ 03:34

in this room do not understand except me Shaaf Syed · ▶ 05:36

Key Takeaways

  • Konveyor extended static code analysis to C, Golang, Python, and Node.js in the last six months.
  • LLM-generated git patches convert legacy RMI/IIOP code to REST endpoints without manual rewriting.
  • The distributed memory layer propagates a developer’s preferred fix pattern to every future generation across the organization.