{ "model": "D1A-E4B v0.6", "base": "google/gemma-4-E4B", "base_revision": "411aa17b749aa952df1359d2dcea73917a544d9a", "init_from": "JohnP1/d1a-e4b@v0.5 (commit e7db32f2254b6feb6ec830ae98662755dce39504)", "stage": "Current PR labels (D3-fresh, jonpol01/d1a#198): 479 hermes-agent PRs created 2026-10-02 to 10-05, shown twice (one pass in each half of training); documents-v1 2,520 (never trained before); routing factory/generic 600/600; decision-v7 1,000; hard-v1, devtools-v1, JGLUE, PR labels 300 each; PR labels Japanese/blast 100/100; 7,078 records; 1 epoch, lr 2e-5, LoRA 16 on all projections, batch 2 x accum 4, states up to 5,120 tokens, 885 steps", "release_exception": "Ships despite decide.py's veto V1 against v0.5 (hard-v1 -2.7 [-4.9, -0.5]), by the owner's decision of 2026-10-10: the model's main job is labelling current PRs, where v0.6 is better. Pin @v0.5 for hard-v1-style reasoning or the older PR-label conventions.", "data": { "counts": { "pr-labels:fresh-fit": 958, "pr-labels:train": 300, "pr-labels:train-ja": 100, "pr-labels:train-blast": 100, "hard-v1:train": 300, "devtools-v1:train": 300, "documents-v1:train": 2520, "ja-jglue:train": 300, "routing:factory-train": 600, "routing:generic-train": 600, "decision-v7:train": 1000 }, "records": 7078, "sha256": "31f7167055468b078e4c8ec16a4ce507fbc6e4662b85effa8bbe8a01dd8477e1", "seed": 0, "fresh_prs": { "prs": 479, "passes": 2, "created": "2026-10-02 to 2026-10-05", "text": "private; aggregates only" }, "leak_checks": "0 eval-state overlap, 0 PR-id overlap with the sealed fresh EVAL half and 47 eval partitions" }, "training": { "epochs": 1, "lr": 2e-05, "head_lr": 0.0, "weight_decay": 0.01, "lora": 16, "lora_targets": "all", "batch": 2, "accum": 4, "dtype": "fp32", "weights_dtype": "bf16", "checkpointing": 1, "max_state": 5120, "p_none": 0.1, "p_none_distract": 0.12, "p_distract": 0.15, "seed": 0 }, "compute": { "where": "local, one Apple M1 Max (MPS)", "wall_seconds": 60962, "optimizer_steps": 885, "records_seen": 7078, "truncated_records": 0, "rejected_records": 0 }, "calibration": { "temperature": 1.954, "fit": "pooled held-out rows: decision-v7 calibration split + PR-labeling development set", "ece_raw": 0.093, "ece_out_of_fold": 0.015, "use_case_temperatures": "none in v0.6; a refitted routing temperature is planned for v0.6.1" }, "code": "github.com/jonpol01/d1a (d1a.training.train, scripts/quality_gate.py, scripts/decide.py)" }