Repository navigation
[Wave 3] Medium — TR mirror: docs/guides/ #635
Description
Wave 3 · 15 finding(s) in 15 fix package(s). Mirror drift across small document pairs in this directory.
Findings
-
DOC-TR06-010 (TR mirror, Medium) — TR mirror drift in docs/guides/alignment.md: Stage 2: DPO (uses the SFT model as base) ... model.name_or_path: "./checkpoints_sft/final_model"
severity Medium
Where. ENdocs/guides/alignment.md:219-232· TRdocs/guides/alignment-tr.md:257-270
English text. Stage 2: DPO (uses the SFT model as base) ... model.name_or_path: "./checkpoints_sft/final_model"
Turkish text. Aşama 2: DPO (SFT modelini base olarak kullanır) ... model.name_or_path: "./checkpoints_sft/final_model"
Which is correct. Neither. With the default training.merge_adapters=false, final_model/ holds only LoRA adapters plus tokenizer, not a standalone base model. The path also assumes stage-1 training.output_dir=./checkpoints_sft, which the example never sets.
Proposed correction (Turkish text for the -tr page). Aşama 2 içinmodel.name_or_path, birinci aşamanıntraining.output_diraltındakifinal_modeldizinine işaret eder. Varsayılanmerge_adapters: falseolduğunda bu dizin yalnızca LoRA adapter'larını içerir; tam ağırlıklı bir temel model gerekiyorsa birinci aşamadatraining.merge_adapters: truekullanın veya zincirleme içinpipeline:bloğunu tercih edin (pipeline.md). -
DOC-TR08-011 (TR mirror, Medium) — TR mirror drift in docs/guides/air_gap_deployment.md: unreadable cache root (chmod broken, mount detached) reports fail rather than warn
severity Medium
Where. ENdocs/guides/air_gap_deployment.md:129· TRdocs/guides/air_gap_deployment-tr.md:129
English text. unreadable cache root (chmod broken, mount detached) reports fail rather than warn
Turkish text. Okunamaz cache root (chmod kırık, mount kopuk)warnyerinefailraporlar
Which is correct. Neither exactly: fail only when the walk errored and zero files were visible; a missing directory (detached mount) is warn.
Proposed correction (Turkish text for the -tr page). Cache kökü var ama okunamıyorsa (dizin yürüyüşü hata verir ve hiç dosya görünmüyorsa; ör. chmod bozuk)hf_hub.offline_cachefailraporlar; dizin hiç yoksa (mount kopuk) veya cache boşsawarnraporlar. Bu yüzdenfail/warnsatırını eğitimden önce mutlaka okuyun. -
DOC-TR08-012 (TR mirror, Medium) — TR mirror drift in docs/guides/air_gap_deployment.md: --offline enforces local_files_only=True end-to-end
severity Medium · already tracked: KNOWN-OPEN CLI-04|CLI-02 docs/roadmap/phase-16-trust-surface-hardening.md:483-489
Where. ENdocs/guides/air_gap_deployment.md:139· TRdocs/guides/air_gap_deployment-tr.md:139
English text. --offline enforces local_files_only=True end-to-end
Turkish text.--offlinebayrağı uçtan ucalocal_files_only=Truezorlar
Which is correct. Neither: --offline sets model.offline and the HF_*_OFFLINE env vars.
Proposed correction (Turkish text for the -tr page).--offlinebayrağımodel.offline'ı açar veHF_HUB_OFFLINE,TRANSFORMERS_OFFLINE,HF_DATASETS_OFFLINEortam değişkenlerini 1'e çeker; cache'te olmayan bir referans HF kütüphaneleri tarafından hata ile reddedilir. -
DOC-TR08-013 (TR mirror, Medium) — TR mirror drift in docs/guides/air_gap_deployment.md: without FORGELM_OPERATOR the run continues without auditing
severity Medium
Where. ENdocs/guides/air_gap_deployment.md:199· TRdocs/guides/air_gap_deployment-tr.md:199
English text. without FORGELM_OPERATOR the run continues without auditing
Turkish text.FORGELM_OPERATORset edilmemiş bağlı staging makinesi debug-seviyesinde bir not görür ve çalıştırma audit olmadan devam eder
Which is correct. Neither: operator identity falls back to user@host; the audit-less path is only for logger construction failure (debug log).
Proposed correction (Turkish text for the -tr page). Audit logger kurulumu best-effort'tur:FORGELM_OPERATORyoksa kimlikkullanıcı@hostolarak türetilir; logger kurulamazsa debug-seviyesinde not düşülür ve işlem audit olmadan sürer. Kimin stage ettiğine dair kanıt gerekiyorsaFORGELM_OPERATOR'ı sabitleyin. -
DOC-TR08-014 (TR mirror, Medium) — TR mirror drift in docs/guides/air_gap_deployment.md: gated models require the same HF_TOKEN during cache-models as during training
severity Medium
Where. ENdocs/guides/air_gap_deployment.md:209· TRdocs/guides/air_gap_deployment-tr.md:209
English text. gated models require the same HF_TOKEN during cache-models as during training
Turkish text. gated modeller,cache-modelssırasında set edilen aynıHF_TOKEN'ı gerektirir
Which is correct. Neither: the token is needed only on the connected host at cache-models time; the offline run reads the local snapshot.
Proposed correction (Turkish text for the -tr page). Gated modeller içinHF_TOKENyalnızca bağlı staging host'tacache-modelssırasında gerekir (lisans erişimi orada çözülür); air-gap host'ta eğitim yerel snapshot'ı okur. -
DOC-TR08-015 (TR mirror, Medium) — TR mirror drift in docs/guides/cicd_pipeline.md: Exit codes
0success,1...4awaiting approval (0-4 only)
severity Medium
Where. ENdocs/guides/cicd_pipeline.md:11,223-229 · TRdocs/guides/cicd_pipeline-tr.md:15-16,231-237
English text. Exit codes0success,1...4awaiting approval (0-4 only)
Turkish text.0başarı,1config hatası,2eğitim hatası,3eval hatası,4insan onayı bekliyor
Which is correct. Neither is complete: _PUBLIC_EXIT_CODES = 0,1,2,3,4,5 (wizard cancelled),6 (integrity failure; verify-* only).
Proposed correction (Turkish text for the -tr page).0başarı,1config hatası,2eğitim/runtime hatası,3eval/gate başarısızlığı,4insan onayı bekliyor; ayrıca5(wizard iptal) ve6(verify-* bütünlük hatası, güvenlik olayı). case bloğuna5)ve6)dalları ve bilinmeyen kodlar için*)eklenmelidir. -
DOC-TR08-016 (TR mirror, Medium) — TR mirror drift in docs/guides/cicd_pipeline.md: forgelm ... > training_result.json; echo "EXIT_CODE=$?" >> $GITHUB_ENV
severity Medium
Where. ENdocs/guides/cicd_pipeline.md:61-64· TRdocs/guides/cicd_pipeline-tr.md:67-70
English text. forgelm ... > training_result.json; echo "EXIT_CODE=$?" >> $GITHUB_ENV
Turkish text. aynı
Which is correct. Neither: the step runs under bash -e so a non-zero exit aborts before the echo; also exit 4 would fail the job.
Proposed correction (Turkish text for the -tr page). Çıkış kodunu yakalamak içinset +e; forgelm ... ; code=$?; set -e; echo "EXIT_CODE=$code" >> "$GITHUB_ENV"; exit 0kalıbını kullanın (veya adımdacontinue-on-error: true);${{ github.event.inputs.config }}değerini doğrudanrun:içine yazmak yerineenv:ile geçirin (script injection). -
DOC-TR08-017 (TR mirror, Medium) — TR mirror drift in docs/guides/cicd_pipeline.md: checkpoints/compliance/ contains audit trails; commit it for regulatory audit trails
severity Medium
Where. ENdocs/guides/cicd_pipeline.md:73-81,276,278 · TRdocs/guides/cicd_pipeline-tr.md:84-87,291-298
English text. checkpoints/compliance/ contains audit trails; commit it for regulatory audit trails
Turkish text.checkpoints/compliance/audit izlerini içerir; ... birlikte commit'lemeyi düşünün
Which is correct. Neither: audit_log.jsonl lives in the output dir, not compliance/; committing compliance artefacts to VCS is a footgun (may carry data-subject/PII-derived metadata).
Proposed correction (Turkish text for the -tr page). Audit zinciri (audit_log.jsonl+ manifest) çıktı dizinindedir;checkpoints/compliance/Annex IV / governance paketlerini içerir. Audit log'u write-once depolamaya, compliance paketini artifact olarak saklayın; kişisel veri içerebileceğinden git'e commit'lemeyin. -
DOC-TR08-018 (TR mirror, Medium) — TR mirror drift in docs/guides/cicd_pipeline.md: forgelm ... --output-format json | jq / json.loads(result.stdout)
severity Medium
Where. ENdocs/guides/cicd_pipeline.md:238-263· TRdocs/guides/cicd_pipeline-tr.md:246-271
English text. forgelm ... --output-format json | jq / json.loads(result.stdout)
Turkish text. aynı
Which is correct. Neither: stdout carries log lines besides the JSON envelope (verified broken example)
Proposed correction (Turkish text for the -tr page). JSON zarfını ayrıştırmadan önce yalnızca son JSON nesnesini alın veya log'ları stderr'e yönlendirin;-qile log'u kısıpjqile doğrulayın. -
DOC-TR08-019 (TR mirror, Medium) — TR mirror drift in docs/guides/gdpr_erasure.md: --kind artefacts deletes a run's compliance bundle (compliance/.json embedding run_id)
severity Medium · already tracked: KNOWN-OPEN TRUST-02 docs/roadmap/phase-16-trust-surface-hardening.md:553-562
Where. ENdocs/guides/gdpr_erasure.md:15,60 · TRdocs/guides/gdpr_erasure-tr.md:15,60
English text. --kind artefacts deletes a run's compliance bundle (compliance/.json embedding run_id)
Turkish text. compliance bundle'ını siler / adında run_id embed eden compliance/*.json dosyalarını siler
Which is correct. Neither exact (verified misleading): deletion is limited to files whose names embed the run_id, which need not be the whole bundle.
Proposed correction (Turkish text for the -tr page).--kind artefactsyalnızca<output_dir>/compliance/altında adında<run_id>geçen dosyaları siler; run'a ait tüm compliance bundle'ını silmeyi garanti etmez. Silmeden önce--dry-runilewould_deletelistesini inceleyin. -
DOC-TR08-020 (TR mirror, Medium) — TR mirror drift in docs/guides/gdpr_erasure.md: --dry-run previews and emits the audit chain without modifying disk
severity Medium
Where. ENdocs/guides/gdpr_erasure.md:50· TRdocs/guides/gdpr_erasure-tr.md:50
English text. --dry-run previews and emits the audit chain without modifying disk
Turkish text. Disk'e dokunmadan silmeyi önizlemek + audit zincirini yaymak için --dry-run
Which is correct. Neither: dry-run does append erasure_requested / erasure_completed(dry_run=true) to audit_log.jsonl (disk write), and in run mode logs bytes_freed=0.
Proposed correction (Turkish text for the -tr page).--dry-runcorpus ve artefact'lara dokunmaz, ancak audit log'adry_run=trueişaretli event'ler ekler (audit zinciri append-only olduğundan bu kayıtlar geri alınamaz). -
DOC-TR08-021 (TR mirror, Medium) — TR mirror drift in docs/guides/gdpr_erasure.md: Loaded config has a webhook block (both modes).
severity Medium
Where. ENdocs/guides/gdpr_erasure.md:101· TRdocs/guides/gdpr_erasure-tr.md:101
English text. Loaded config has a webhook block (both modes).
Turkish text. Yüklü config webhook block'u içeriyor
Which is correct. Neither: event fires in row mode only (warnings computed at _purge.py L660 inside row path) and only when webhook.url is set or webhook.url_env resolves to a non-empty env var.
Proposed correction (Turkish text for the -tr page). Yalnız row modunda. Row erasure × yüklü config'te çözümlenebilir bir webhook hedefi var (webhook.urldolu veyawebhook.url_envile adlandırılan ortam değişkeni set). Run modu bu uyarıyı yaymaz. -
DOC-TR08-022 (TR mirror, Medium) — TR mirror drift in docs/guides/gdpr_erasure.md: reverse-pii uses the same per-output-dir salt as purge; digests match
severity Medium
Where. ENdocs/guides/gdpr_erasure.md:130-147· TRdocs/guides/gdpr_erasure-tr.md:131-148
English text. reverse-pii uses the same per-output-dir salt as purge; digests match
Turkish text. aynı
Which is correct. Neither fully (verified misleading): reverse-pii --salt-source per_dir | env_var | plaintext; digests match only when same salt source/dir is used.
Proposed correction (Turkish text for the -tr page). Digest eşleşmesi yalnızcareverse-pii'nin aynı--output-dir'deki aynı per-dir salt ile (ve aynıFORGELM_AUDIT_SECRETdurumunda) çalıştırılmasıyla geçerlidir;--salt-source env_varveyaplaintextfarklı digest üretir. -
DOC-TR08-023 (TR mirror, Medium) — TR mirror drift in docs/guides/human_approval_gate.md: notify_awaiting_approval with the run id and metrics summary
severity Medium
Where. ENdocs/guides/human_approval_gate.md:93· TRdocs/guides/human_approval_gate-tr.md:93
English text. notify_awaiting_approval with the run id and metrics summary
Turkish text. run id ve metric özetiyle fırlatır
Which is correct. Neither: payload carries run_name, status and model_path (staging path) only; and is suppressed when notify_on_success is false.
Proposed correction (Turkish text for the -tr page). Trainernotify_awaiting_approval'ırun_nameve staging yolu (model_path) ile fırlatır; metrik özeti ve run_id taşımaz.webhook.notify_on_success: falseise bu bildirim de gönderilmez — reviewer'ı yalnız webhook'a bağlamayın. -
DOC-TR09-001 (TR mirror, Medium) — TR mirror drift in docs/guides/getting-started.md: operator.identity —
passif FORGELM_OPERATOR is set,warnwith the getpass.getuser()@hostname fallback,failif neither resolves (unless FORGE…
severity Medium
Where. ENdocs/guides/getting-started.md:75· TRdocs/guides/getting-started-tr.md:75
English text. operator.identity —passif FORGELM_OPERATOR is set,warnwith the getpass.getuser()@hostname fallback,failif neither resolves (unless FORGELM_ALLOW_ANONYMOUS_OPERATOR=1 opt-in is set).
Turkish text. operator.identity — FORGELM_OPERATOR set ise pass, getpass.getuser()@hostname fallback ile warn, ikisi de çözülmezse fail (FORGELM_ALLOW_ANONYMOUS_OPERATOR=1 opt-in set ise).
Which is correct. EN. In code, an unresolvable username with FORGELM_ALLOW_ANONYMOUS_OPERATOR=1 gives warn (anonymous@host), and without the opt-in it gives fail (_doctor.py:896-923; AuditLogger raises ConfigError at compliance.py:219-229). The TR parenthetical reads as 'fail when the opt-in is set', which inverts the rule. TR :143 states it correctly.
Proposed correction (Turkish text for the -tr page). 'operator.identity—FORGELM_OPERATORset isepass;getpass.getuser()@hostnamefallback'iylewarn; ikisi de çözülemezsefail(yalnızcaFORGELM_ALLOW_ANONYMOUS_OPERATOR=1opt-in'i set edilmemişse; opt-in set iseanonymous@<host>kimliğiylewarn).'
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.
Metadata
Metadata
Assignees
Labels
Type
Projects
- StatusShow more project fieldsTodo
Activity