You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Triage] docs/reference/configuration.md: false denial — N-21: export/inference/merging unpinned by design; merge-source models cannot be pinned (DOC-D1B01-059) #831
Needs triage. Reviewers disagreed on this finding, so it is not counted in the backlog. Decide whether it is a real defect: if yes, set severity and wave; if not, close it with the reason.
DOC-D1B01-059 — docs/reference/configuration.md: false denial — N-21: export/inference/merging unpinned by design; merge-source models cannot be pinned
The document says. N-21: export/inference/merging unpinned by design; merge-source models cannot be pinned
What the code does. 'Unpinned' holds, but the reason given ('they load local artefacts this run produced') is false for --merge. _run_merge passes config.model.name_or_path, normally a Hub id, as base_model_path (forgelm/cli/_no_train_modes.py:136-137). merging.py:74-76 then calls from_pretrained without a revision, so a configured model.revision is silently ignored by --merge. MergeInput.path also accepts 'Filesystem path or Hub id' (config.py:166), so merge sources can be unpinned Hub repos.
Found by the October 2026 ForgeLM code and documentation review against commit cab2947. Code links point at that commit; line numbers may have moved since. Finding IDs (CR-…, DOC-…, TECH-…) are stable references for this backlog.
The sentence is partly accurate. The loads are indeed unpinned and merge.models[] has no revision field, but the stated reason is wrong: --merge loads model.name_or_path (usually a Hub id) and each merge.models[].path (a path or Hub id) without revision=, and chat/inference also accept Hub ids. So these are known gaps, not 'by design', and a configured model.revision is ignored by --merge (the code side is tracked in #505).
Proposed fix: reword the two Known-gaps bullets in configuration.md and configuration-tr.md to say which commands load by name or path without a pin, and point at #505, instead of claiming they only load local artefacts.
Triage result: documentation, i18n (the Turkish mirror says the same), area: config, severity: low, wave: 4.
Triage round 1, checked against development on 2026-10-20.
Activity
cemililik commentedon Oct 20, 2026
The sentence is partly accurate. The loads are indeed unpinned and merge.models[] has no revision field, but the stated reason is wrong: --merge loads model.name_or_path (usually a Hub id) and each merge.models[].path (a path or Hub id) without revision=, and chat/inference also accept Hub ids. So these are known gaps, not 'by design', and a configured model.revision is ignored by --merge (the code side is tracked in #505).
Proposed fix: reword the two Known-gaps bullets in configuration.md and configuration-tr.md to say which commands load by name or path without a pin, and point at #505, instead of claiming they only load local artefacts.
Triage result:
documentation,i18n(the Turkish mirror says the same),area: config,severity: low,wave: 4.Triage round 1, checked against
developmenton 2026-10-20.