det translator: an item whose bytes overlap a COMP-1 / COMP-2 / COMP-5 item is refused (census: 2 programs; #5865 rank 4)
维护者通常 1 天内回复
评估
调研方向
Start with gitgalaxy/tools/cobol_to_java/det/gen.py near lines 406 and 413, then read det/hfp.py, the register, and the evidence policy sections cited in the issue. Check .mainframe_corpora for the construct, then build synthetic reproductions and use GnuCOBOL as the oracle for the documented byte views. Done means equivalence is proved, undefined cases are refused by name, and an aggregate census is rerun with the resulting move stated.
由索引模型根据 Issue 内容生成。
描述
Why
gap_prevalence.md (#5865): <name>: bytes overlap another item refuses 2 census programs in one estate (era e4), and it ranks 4th in the close-next order. The translator raises it in gitgalaxy/tools/cobol_to_java/det/gen.py (~L406 / L413): Untranslatable("<ref>: its bytes hold <over> COMP-1/COMP-2 (...)") and "... COMP-5 (...)". This is an item whose storage overlaps (REDEFINES or group) a floating-point or COMP-5 item, read in a way the det runtime's representation (a Java double / long, not bytes) can't serve.
Do
- Build synthetic reproductions (never census code, evidence policy section 3): a DISPLAY / group item REDEFINES a COMP-1, COMP-2 and COMP-5 item, and a group MOVE over them. Also check the burned corpora (
.mainframe_corpora) for the construct first, per policy section 2. - Model the byte view where IBM documents it (COMP-1 / COMP-2 are HFP, see
det/hfp.pyand the register; COMP-5 is native binary), with the GnuCOBOL oracle proving it. Refuse by name whatever stays undefined. - Equivalence-prove the synthetic cases. Re-run the census (aggregates only) and state the move.
Scope: frontier. Part of #5865.
Owner ruling 2026-11-04: COMP-5 follows z/OS byte order by default (option B)
The det port holds COMP-5 big-endian, as z/OS does, for every program, not only where a byte view would otherwise be refused. Rationale: one representation (no per-program hidden mode); no byte-order mismatch when COMP-5 crosses a COMMAREA, file or CALL boundary; IBM is the reference and GnuCOBOL the instrument (#4702). The oracle's little-endian bytes are a declared difference (#7725, #7729, #7733). zos_comp5=False stays an explicit GnuCOBOL-native what-if.
Burned-estate impact (checked 2026-11-04; COMP-5 is in 4 files):
- CardDemo PAUDBLOD, PAUDBUNL, DBUNLDGS (via copybook IMSFUNCS, L4): each does
CALL 'CBLTDLI', whichzos_comp5_refusal(#7673) refuses today. These must keep translating before the flip. - Async credit-card ASYNCPNT, SEQPNT (L5): no external CALL, but their bytes change. Re-prove them; L5 may dip from 12 to 10 until the re-judged mutants are accounted.
- DBB EPSCSMRD: refused already (#5106), no change. GenApp, CBSA and zECS do not use COMP-5.
Order:
- Slice 4: IMS DL/I (
CALL 'CBLTDLI') works underzos_comp5=True. DL/I areas' COMP-5 fields pass big-endian, as IMS on z/OS expects. PAUDBLOD, PAUDBUNL and DBUNLDGS translate whole under the switch and stay equivalent with the declared difference. (#7756)
Hold lifted (owner 2026-11-05: no release pending; census first): - Slice 5,
translate()defaults tozos_comp5=True. Regenerate the affected goldens, re-prove the 5 programs above in one evidence refresh, then census T3 on #7709.
- 主要语言
- Python
- 星标
- 57
- 派生
- 11
- 平均合并
- 1 小时 46 分钟
- 30 天内合并 PR
- 972
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
squid-protocol/gitgalaxy 的其他 Issue
-
documentation
难度 2/5 1-3 小时 新手友好度 68/100
squid-protocol/gitgalaxy#8002 ·
维护者通常 1 天内回复
-
documentation
难度 2/5 1-3 小时 新手友好度 78/100
squid-protocol/gitgalaxy#8000 ·
维护者通常 1 天内回复
-
documentation
难度 1/5 1 小时以内 新手友好度 82/100
squid-protocol/gitgalaxy#8001 ·
维护者通常 1 天内回复
-
documentation
难度 1/5 1-3 小时 新手友好度 84/100
squid-protocol/gitgalaxy#7998 ·
维护者通常 1 天内回复
-
documentation
难度 2/5 1-3 小时 新手友好度 78/100
squid-protocol/gitgalaxy#7999 ·
维护者通常 1 天内回复
查看 squid-protocol/gitgalaxy 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 83/100
-
难度 2/5 1-3 小时 新手友好度 87/100
维护者通常 7 天内回复
-
good first issue
难度 2/5 1-3 小时 新手友好度 78/100
MTSWebServices/RecTools#330 ·
-
area: web priority: P1 story
难度 2/5 1-3 小时 新手友好度 76/100
nfiasco/Quant-Time-Machine#151 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 72/100
autowarefoundation/autoware_carla_scenario#2019 ·
维护者通常 1 天内回复