Skip to content

docs/usermanuals/en/training/dpo.md: broken example — YAML example sets evaluation.safety.severity_thresholds with keys S1, S2, S5, S10 (DOC-BYAML-002) #147

Open

Description

@cemililik

Wave 1 · theme D1-10: Documentation-only fixes · highest severity High · 1 finding(s) · effort docs fix

Summary

Copy-paste of the flagship DPO safety example is rejected at config load; user cannot tell that per-category S1..S14 limits are not what this field takes.

Primary finding

DOC-BYAML-002 — docs/usermanuals/en/training/dpo.md: broken example — YAML example sets evaluation.safety.severity_thresholds with keys S1, S2, S5, S10

severity High · already tracked: KNOWN-OPEN C31-DOC-SCHEMA-PROSE — docs/roadmap/phase-16-trust-surface-hardening.md:773,785-786

Where. docs/usermanuals/en/training/dpo.md:187-196 (TR docs/usermanuals/tr/training/dpo.md:173-180) · type: broken example

The document says. YAML example sets evaluation.safety.severity_thresholds with keys S1, S2, S5, S10

What the code does. SafetyConfig validator accepts only the severity vocabulary (critical/high/medium/low); S1.. keys raise a ValueError, so the example fails --dry-run with exit 1. Reproduced via ForgeConfig on the snippet merged into a minimal config.

Code references. forgelm/config.py:1066-1076, forgelm/config.py:978-983

User impact. Copy-paste of the flagship DPO safety example is rejected at config load; user cannot tell that per-category S1..S14 limits are not what this field takes.

Proposed correction. Replace with critical/high/medium/low keys, or document the per-category gate that actually exists; keep EN and TR in sync.

Turkish mirror. the Turkish page has the same error; fix both in the same PR

Acceptance criteria

  • Each statement is re-checked against the code at fix time.
  • Documentation listed above is corrected in English and in its Turkish mirror in the same PR.
  • Every finding in this issue is resolved or explicitly closed with a reason.

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    backlog: knownAlready tracked in docs/roadmapblockedWaits for another issue (see Blocked by); set and removed automatically, never by handdocumentationImprovements or additions to documentationseverity: highWrong behaviour or a false claim users rely onsource: review-2026-10Found by the October 2026 code and documentation reviewwave: 1Roadmap wave 1: high severity, small effort

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions