Industrial automation / Preflight

ControlShift — Industrial migration preflight

Turns a legacy PLC program and incomplete documentation into scope, unknowns and quote-readiness. It never touches a controller: it reads copies of offline artifacts.

ControlShift — Industrial migration preflight
A system integrator is handed a twenty-year-old SLC 500, drawings from 2014, some phone photos of the panel, no HMI backup, no drive parameters, a twelve-hour shutdown window — and is asked for a fixed price. The question is not how to convert the program. It is what exactly they are agreeing to deliver if they quote it. ControlShift productises the work a senior controls engineer does before quoting: it parses the program export, measures how complete the evidence is, reconstructs what depends on what, applies versioned migration rules and issues a verdict per commercial model. On the acceptance case it concludes FIXED PRICE: NOT READY, with the reasons stated — two critical unknowns, two blocking findings, 54 % weighted coverage. The rule that governs the whole system: missing evidence never becomes PASS. No safety PLC in the supplied files does not mean safety is out of scope; it means safety is insufficiently evidenced, and that is what the system says. No PASS finding exists in V1, and a test enforces it on every case in the golden dataset. What it taught me was almost entirely about false greens. A work package summed quantities in different units and priced two instruction rewrites as if there were thirteen. A file extension decided a type that feeds an evidence domain, and one misclassified PDF flipped the commercial verdict on its own, with nobody typing anything wrong. The seeder wrote rows straight to Postgres, walked around seven intake controls and forced SCANNED on files no scanner had seen: every suite built on it was passing over data no user could produce. And an unfamiliar header silently deleted the entire program, leaving an empty model and no software findings at all — including the two instructions that block the migration. There is no AI model in any path of this product. Coverage percentages, findings, hours and the verdict are arithmetic over versioned rules.

Tech stack

Rust · NestJS · PostgreSQL · Next.js

Outcomes

  • GO-001 runs from raw artifacts to a commercial verdict in under 3 s, with real antivirus scanning
  • 34 engine tests, 48 API tests and 72 end-to-end assertions, with no false-safe finding
  • The operand layer validated against 143 operands lifted from three real RSLogix projects

Links