Split `forgelm/trainer.py` into a sub-package (`_kwargs`, `_runtime`, `_finalize`, `_artifacts`) — deferred until Phase 16 S4 and S8 have landed
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 18/100
- Loại issue
- Tái cấu trúc
- Độ rõ ràng
- Khá rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- python
- Lĩnh vực
- machine-learning
Hướng nghiên cứu
Start in forgelm/trainer.py and the _DEFERRED_SPLITS entry in tools/check_module_size.py, then confirm the Phase 16 S4 (#890) and S8 (#894) preconditions have landed. The work is a behaviour-neutral split into a forgelm/trainer/ sub-package, keeping ForgeTrainer and train importable from the old path, with test patch targets retargeted. Done means the module-size check passes without the deferral entry and the deferral row and CHANGELOG entry are updated.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Deferred work ·
F-PR29-A1-05: trainer.py· severity Low · cost ~1 day · recorded indocs/roadmap/risks-and-decisions.md:79
Summary
forgelm/trainer.py is a deferred module split: the ForgeTrainer god-object holds TRL kwarg fold-in, OOM/DeepSpeed runtime, artifact finalisation and the compliance / model-card / deployer hand-off in one file; forgelm.trainer.ForgeTrainer and forgelm.trainer.train must stay importable. The module-size guard holds it to a fatal no-growth budget, but nothing pays the debt down until someone takes the split.
Condition or budget
Phase 16 S2, S3, S4 and S8 have all landed (decision C-18: never split ahead of the behaviour steps that change the same file); S4 is #890 and S8 is #894
State today (re-checked 2026-10-09)
1519 code lines against a budget of 1519 at 08f2426 (deferred at 1432, raised five times); no forgelm/trainer/ package exists.
Related
#667 and #668 track how the module-size guard counts lines and accepts budget raises; decide them before relying on a module's budget.
Acceptance criteria
- The module becomes a sub-package along the recorded seams, behaviour-neutral, with every public name still importable from its current path.
- Its
_DEFERRED_SPLITSentry is removed fromtools/check_module_size.pyand every resulting module is under the normal ceiling. - Test patch targets that named the old module are retargeted to the module that resolves the name at call time (the
forgelm/verify.pysplit found five that silently moved). - The row is removed from the deferral table and the CHANGELOG names its ID (the table's removal contract).
Recorded in docs/roadmap/risks-and-decisions.md (read at f94595f) and re-checked against the code on 2026-10-09. The row leaves that table only when the fix is on main, the CHANGELOG names its ID and any promised guard exists.
- Ngôn ngữ chính
- Python
- Star
- 9
- Fork
- 1
- Merge trung bình
- 17 giờ 14 phút
- Pull request đã merge (30 ngày)
- 17
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của HodeTech/ForgeLM
-
area: site bug good first issue severity: low wave: 4
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
HodeTech/ForgeLM#961 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
area: dev-tooling bug severity: low source: roadmap wave: 4
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation good first issue severity: low source: review-2026-09 wave: 4
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 80/100
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation severity: medium source: review-2026-09 wave: 3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation good first issue severity: medium source: review-2026-09 wave: 3
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của HodeTech/ForgeLM
Issue tương tự
-
Examples say cnxĐang mởdocumentation embedded
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 88/100
Alishahryar1/free-claude-code#2111 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
namespace operations
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
EclipseFdn/open-vsx.org#14373 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
Maintainer thường phản hồi trong vòng 1 ngày