det translator: more readable Java — extend provably-safe lifting from bytes to plain Java types

Open
#4,715 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
15/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
java, python
Domain
compilers

Research direction

Start with the lift criteria in program.py, since the issue says the translator already lifts some fields to plain Java types under them, and check how REDEFINES and group MOVEs are currently treated. The work needs a per-port readability metric recorded in the evidence report before any lifting changes. Done means the full det sweep and fuzz run show 0 verdict diffs, and each new lift has a recorded safety reason.

Written by the indexing model from the issue text.

Description

enhancement legacy-modernization priority: medium

What. COBOL programs often reinterpret the same bytes (REDEFINES, group MOVEs), so faithful ports keep byte-exact storage, which produces hard-to-read Java. The translator already lifts some fields to plain Java types when that's provably safe (program.py lift criteria). Extend this: more field kinds, local reasoning about REDEFINES and group use, and readable names.

Measure readability per port: share of fields lifted, runtime calls per statement, method sizes. Track it in the evidence report.

Acceptance.

  • A readability metric per port.
  • An increase on the burned estates.
  • No verdict change: full det sweep, fuzz 0 diffs.
  • Every lift is justified by a recorded safety reason.

Part of the cobolrt-as-a-product epic (linked from the epic). Owner-approved direction, 2026-10-08.

🤖 Generated with Claude Code

Dominant language
Python
Stars
57
Forks
11
Avg merge
1h 35m
Merged PRs (30d)
975

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from squid-protocol/gitgalaxy

All issues in squid-protocol/gitgalaxy

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.