Choosing-a-trainer table documents KTO rows as {prompt, response, label}, but the KTO loader requires a completion column (F-W1-DOCS-TRAIN-02)
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 75/100
- Issue type
- Documentation
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- markdown, python
- Domain
- documentation, machine-learning
Research direction
Start with the KTO row at line 51 of docs/usermanuals/en/concepts/choosing-trainer.md, then check the KTO column requirements in the _validate_trainer_columns branch of forgelm/data.py around lines 600-607. Change the row to {prompt, completion, label: bool} in the English page and in the Turkish mirror at docs/usermanuals/tr/concepts/choosing-trainer.md line 51. Leave the SFT row at line 49 for #403. Done when both languages match the loader and the KTO page.
Written by the indexing model from the issue text.
Description
Wave 3 · group W3 Docs · highest severity Medium · 1 finding(s) · effort docs fix
Summary
The "What to look at in your data" table says {prompt, response, label: bool} rows mean KTO. The KTO loader requires completion and label and stops with a KeyError on response, so data shaped the way the page recommends does not load.
Primary finding
F-W1-DOCS-TRAIN-02 — The choosing-a-trainer table names the wrong KTO answer column
severity Medium · confidence high · checked against the loader
What happens. docs/usermanuals/en/concepts/choosing-trainer.md:51 and the Turkish mirror at the same line. _validate_trainer_columns raises KeyError: KTO trainer requires 'completion' and 'label' (boolean) columns … (forgelm/data.py:600-607). The row above it (:49, {prompt, completion} → SFT) is the SFT-format defect tracked in #403; that issue now lists this page too.
Where.
docs/usermanuals/en/concepts/choosing-trainer.md:51docs/usermanuals/tr/concepts/choosing-trainer.md:51forgelm/data.py:600-607(KTO column check)
Evidence (re-verified on 2026-10-09).
- The KTO branch of
_validate_trainer_columnsnames onlycompletionandlabel; both table rows are unchanged ondevelopment.
Recommended fix. Change the KTO row to {prompt, completion, label: bool} in both languages, matching the KTO page and the loader. Settle the SFT row (:49) with whatever #403 decides for the SFT format.
Related. #403 — the SFT row of the same table; fix both rows together if the PRs overlap.
Acceptance criteria
- Every data shape in the table loads with the trainer it recommends.
- Documentation listed above is corrected in English and in its Turkish mirror in the same PR.
- The finding is resolved or explicitly closed with a reason.
Found by the September 2026 independent review of ForgeLM against commit cab2947 and re-verified against development at f94595f on 2026-10-09. Code links point at cab2947; line numbers may have moved since. Finding IDs (F-W1-…) are stable references for this backlog.
- Dominant language
- Python
- Stars
- 9
- Forks
- 1
- Avg merge
- 8h 10m
- Merged PRs (30d)
- 5
Getting set up
- Ships a Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from HodeTech/ForgeLM
-
area: dev-tooling bug severity: low source: roadmap wave: 4
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Site: the theme-locked --code-comment grey (#6a6f80) on the dark code surface is 3.8:1, below WCAG AA, in both themes (F-W1-SITE-06)Possibly taken @vortsghost2025 claimed this today. Openarea: site bug good first issue severity: low source: review-2026-09 wave: 4
Difficulty 2/5 1-3 hours Newbie friendliness 66/100
-
documentation good first issue severity: low source: review-2026-09 wave: 4
Difficulty 1/5 1-3 hours Newbie friendliness 80/100
-
documentation severity: medium source: review-2026-09 wave: 3
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
documentation good first issue severity: medium source: review-2026-09 wave: 3
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
All issues in HodeTech/ForgeLM
Similar issues
-
Atomic append fails to create a missing filePossibly taken @harbinresearcher claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
fabiocaccamo/python-fsutil#201 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
Maintainers usually reply within 1 day
-
task
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
danparshall/claude_researcher#87 ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
GhostManager/Ghostwriter#998 · 1 comment ·
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
datajoint/datajoint-python#1586 ·
Maintainers usually reply within 1 day