Skip to content

[Wave 3] Medium — Docs: docs/product_strategy.md #580

Open

Description

@cemililik

Wave 3 · 5 finding(s) in 5 fix package(s). One pass over this document; keep the Turkish mirror in sync.

Findings

  • DOC-D2B09-010 (docs, Medium) — docs/product_strategy.md: wrong detail — the final model lands in final_model.staging/ — operators run forgelm approve <run_id> ... or forgelm reject <run_id> to discard
    severity Medium · already tracked: KNOWN-OPEN DOCS-03/DOCS-04 (S15 staging path) — docs/roadmap/phase-16-trust-surface-hardening.md:773
    Where. docs/product_strategy.md:39 (Turkish mirror: docs/product_strategy-tr.md:39) · type: wrong detail
    The document says. the final model lands in final_model.staging/ — operators run forgelm approve <run_id> ... or forgelm reject <run_id> to discard
    What the code does. The staging directory is final_model.staging.<run_id>/. reject does not discard: it keeps the staging directory for forensic review and records human_approval.rejected. Both approve and reject require --output-dir.
    Code references. forgelm/config.py:1222, forgelm/trainer.py:1521, forgelm/cli/_parser.py (reject help: 'left untouched')
    Proposed correction. Rewrite as: "the model lands in final_model.staging.<run_id>/; run forgelm approve <run_id> --output-dir <dir> to promote it, or forgelm reject <run_id> --output-dir <dir> to record a rejection (the staging directory is kept for forensic review)."
    Turkish mirror. the Turkish page has the same error; fix both in the same PR

  • DOC-D2B09-011 (docs, Medium) — docs/product_strategy.md: stale — Meaningful exit codes: 0 (success), 1 (config/validation error), 2 (training error), 3 (evaluation/safety failure), 4 (awaiting human approval)
    severity Medium · already tracked: KNOWN-OPEN C31-EXIT-CODE-PROSE — docs/roadmap/phase-16-trust-surface-hardening.md:782-785
    Where. docs/product_strategy.md:46 (Turkish mirror: docs/product_strategy-tr.md:46) · type: stale
    The document says. Meaningful exit codes: 0 (success), 1 (config/validation error), 2 (training error), 3 (evaluation/safety failure), 4 (awaiting human approval)
    What the code does. The public contract is 0-6: 5 = wizard cancelled and 6 = integrity failure from verify-. The document's own competitive table (L96) says 0/1/2/3/4/5/6.
    Code references. forgelm/cli/_exit_codes.py:10-39
    Proposed correction. Append: ", 5 (wizard cancelled), 6 (integrity failure — a verify-
    command compared an artefact and it did not match)."
    Turkish mirror. the Turkish page has the same error; fix both in the same PR

  • DOC-D2B09-012 (docs, Medium) — docs/product_strategy.md: stale — Meaningful exit codes for pipeline orchestration: 0 (success), 1, 2, 3, 4 (awaiting human approval)
    severity Medium · already tracked: KNOWN-OPEN C31-EXIT-CODE-PROSE — docs/roadmap/phase-16-trust-surface-hardening.md:782-785
    Where. docs/product_strategy.md:46 · type: stale
    The document says. Meaningful exit codes for pipeline orchestration: 0 (success), 1, 2, 3, 4 (awaiting human approval)
    What the code does. The training path emits only 0-4, but the public contract also includes 5 (wizard cancelled) and 6 (integrity failure) (forgelm/cli/_exit_codes.py:21,40,42-51). The same document's table at line 96 says 0/1/2/3/4/5/6.
    Turkish mirror. the Turkish page has the same error; fix both in the same PR

  • DOC-D2B09-013 (docs, Medium) — docs/product_strategy.md: stale — Wizard mode (forgelm wizard) ... Quickstart templates (Phase 10.5) will provide working configs
    severity Medium · already tracked: KNOWN-OPEN DOCS-11 docs/roadmap/phase-16-trust-surface-hardening.md:801-803
    Where. docs/product_strategy.md:74 · type: stale
    The document says. Wizard mode (forgelm wizard) ... Quickstart templates (Phase 10.5) will provide working configs
    What the code does. The parser has 19 subcommands and none is 'wizard'; the wizard is the --wizard flag (_parser.py:1329). The quickstart subcommand exists and five templates ship (forgelm/templates/{code-assistant,customer-support,domain-expert,grpo-math,medical-qa-tr}; quickstart.py:68).
    Turkish mirror. the Turkish page has the same error; fix both in the same PR

  • DOC-D2B09-015 (docs, Medium) — docs/product_strategy.md: wrong detail — ForgeLM delegates to bitsandbytes/AWQ/GPTQ/HQQ and existing runtimes
    severity Medium
    Where. docs/product_strategy.md:86 (Turkish mirror: docs/product_strategy-tr.md:86) · type: wrong detail
    The document says. ForgeLM delegates to bitsandbytes/AWQ/GPTQ/HQQ and existing runtimes
    What the code does. Quantization in forgelm/ is bitsandbytes (4-bit NF4 via BitsAndBytesConfig) only; the strings awq, gptq and hqq do not occur anywhere in forgelm/. GGUF export goes through llama.cpp's converter.
    Code references. forgelm/model.py:440-450
    Proposed correction. "ForgeLM delegates quantization to bitsandbytes (QLoRA) and GGUF conversion to llama.cpp; it does not implement or integrate AWQ, GPTQ or HQQ."
    Turkish mirror. the Turkish page has the same error; fix both in the same PR

Done when

  • Every finding above is fixed or closed with a reason (tick it here).
  • Code fixes carry a test; doc fixes update the Turkish mirror in the same PR.

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.

Activity

  1. added
    documentationImprovements or additions to documentation
    backlog: knownAlready tracked in docs/roadmap
    severity: mediumReal defect with limited reach or a workaround
    source: review-2026-10Found by the October 2026 code and documentation review
    wave: 3Roadmap wave 3: medium severity, module sweeps
    on Oct 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    backlog: knownAlready tracked in docs/roadmapdocumentationImprovements or additions to documentationseverity: mediumReal defect with limited reach or a workaroundsource: review-2026-10Found by the October 2026 code and documentation reviewwave: 3Roadmap wave 3: medium severity, module sweeps

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions