feature: add COBOL-to-Python migration plan (MBA-1423) - #261
Open
devin-ai-integration[bot] wants to merge 1 commit into
Open
devin-ai-integration[bot] wants to merge 1 commit into
devin-ai-integration[bot] wants to merge 1 commit into
Conversation
…as a target language
Author
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Documentation-only. Adds
documentation/technical/python-migration-plan.mdand makes Python a first-class translation target in the README, closing MBA-1423.The plan is built from a measured inventory of the tree rather than generic advice — 38 programs / 20 copybooks, with 8 programs issuing
EXEC CICS, 14 issuingEXEC SQL, 16 declaring KSDS files, and 4 copybooks carryingCOMP-3fields. Those counts drive a 4-tier scope split (no-dependency / KSDS / DB2 / CICS) and a 6-wave sequence where each wave has an explicit exit criterion.Two decisions worth flagging for review:
PIC S9(13)V9(2) COMP-3has no Python analogue, so the plan mandatesDecimalwith an explicitquantize()on every store, and puts the pilot on numeric validation before any volume translation.1000-VALIDATE-IDbecomes_1000_validate_idso a reviewer can diff Python against COBOL paragraph-by-paragraph. Readability is deliberately traded for traceability, since this is benchmark reference material.Wave 0 (the "first migration step" acceptance criterion) is specified down to the file list: the
Picture/record-codec runtime,PORTVAL.cpy+PORTVALDtranslated, and a differential pytest that runs both the GnuCOBOL-compiled module and the Python function over one input corpus and asserts equalLS-RETURN-CODE/LS-ERROR-MSG.PORTVALDwas chosen because an executable oracle exists today — verified locally:No COBOL source is touched; the plan explicitly prohibits editing it to ease translation, which would invalidate the benchmark.
Related: PR #94 added a ticket stub for this work and also edits the README Future Plans line, so the two will conflict on that line if both land.
Link to Devin session: https://app.devin.ai/sessions/273b91ab7f46499c8b1e5b652145b733
Devin Review