Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions docs/design/iter-slm257-lot4-01-not-authorized-20260725.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
{
"contract_hash": "3840a7e57f9829623bd91f26ff0bf8c3d4388c830a82f720f86395702b00bf06",
"contract_id": "lotus-openui-compute-frontier-v1",
"issue": {
"activation_requirement": "SLM-251 supplies faithful treatment and continued explicit checkpoints with fairness manifests; SLM-252/253/256 select the objective/readout/workspace or explicitly close those branches; SLM-254 defines allowed causal-use language; SLM-255 defines accepted-equivalence evaluation.",
"alias": "LOT4-01",
"gate_contract_id": "lotus-openui-compute-frontier-v1",
"linear_issue": "SLM-257",
"slug": "lot4-01-compute-frontier",
"title": "Measure the equal-quality end-to-end accuracy, throughput, FLOPs, memory, energy, and training-cost frontier"
},
"lot1_01_disposition": "not_authorized",
"lot1_02_disposition": "not_authorized",
"schema_version": "lot_downstream_gate/v1",
"verdict": "not_authorized",
"verdict_rationale": "LOT4-01 (SLM-257) activation requires: SLM-251 supplies faithful treatment and continued explicit checkpoints with fairness manifests; SLM-252/253/256 select the objective/readout/workspace or explicitly close those branches; SLM-254 defines allowed causal-use language; SLM-255 defines accepted-equivalence evaluation. The LOT1-02 launch gate reports 'not_authorized' (LOT1-01 disposition 'not_authorized'): no faithful K x c model path, curriculum, Stage 0 parent, or continued-explicit control exists, and SLM-249's oracle ceiling is not positive. Closing not_authorized in plan-only/bounded-diagnostic mode; no training, factorial, intervention, or systems code is added by this disposition.",
"version_stamp": {
"code_commit": "d2ee54dc7bd95dd59a0e4181d0a0b095b36c4178",
"code_dirty": true,
"components": {
"harness.experiments": "v116"
},
"stamp_schema": "version_stamp/v1",
"stamped_at": "2026-07-25T16:19:43.618388+00:00"
}
}
15 changes: 15 additions & 0 deletions docs/design/iter-slm257-lot4-01-not-authorized-20260725.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# SLM-257 LOT4-01 — Downstream-gate disposition (lotus-openui-compute-frontier-v1)

Verdict: **not_authorized**

LOT4-01 (SLM-257) activation requires: SLM-251 supplies faithful treatment and continued explicit checkpoints with fairness manifests; SLM-252/253/256 select the objective/readout/workspace or explicitly close those branches; SLM-254 defines allowed causal-use language; SLM-255 defines accepted-equivalence evaluation. The LOT1-02 launch gate reports 'not_authorized' (LOT1-01 disposition 'not_authorized'): no faithful K x c model path, curriculum, Stage 0 parent, or continued-explicit control exists, and SLM-249's oracle ceiling is not positive. Closing not_authorized in plan-only/bounded-diagnostic mode; no training, factorial, intervention, or systems code is added by this disposition.

## Upstream chain

- LOT1-02 launch gate (SLM-251): `not_authorized`
- LOT1-01 activation gate (SLM-250): `not_authorized`
- Activation requirement: SLM-251 supplies faithful treatment and continued explicit checkpoints with fairness manifests; SLM-252/253/256 select the objective/readout/workspace or explicitly close those branches; SLM-254 defines allowed causal-use language; SLM-255 defines accepted-equivalence evaluation.

## Non-goals honored

No training campaign, factorial, readout/decoder, intervention, systems measurement, or production default change. This disposition is itself the deliverable while the upstream activation gate is unmet.
14 changes: 14 additions & 0 deletions src/slm_training/harnesses/experiments/lot_downstream_gate.py
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,20 @@ def to_dict(self) -> dict[str, Any]:
"selected supervision routing/timing/grounding contract."
),
),
"SLM-257": DownstreamIssueSpec(
linear_issue="SLM-257",
alias="LOT4-01",
title="Measure the equal-quality end-to-end accuracy, throughput, FLOPs, memory, energy, and training-cost frontier",
gate_contract_id="lotus-openui-compute-frontier-v1",
slug="lot4-01-compute-frontier",
activation_requirement=(
"SLM-251 supplies faithful treatment and continued explicit "
"checkpoints with fairness manifests; SLM-252/253/256 select "
"the objective/readout/workspace or explicitly close those "
"branches; SLM-254 defines allowed causal-use language; "
"SLM-255 defines accepted-equivalence evaluation."
),
),
}


Expand Down
25 changes: 21 additions & 4 deletions src/slm_training/resources/versions.json
Original file line number Diff line number Diff line change
Expand Up @@ -1912,7 +1912,7 @@
]
},
"harness.experiments": {
"version": "v122",
"version": "v123",
"kind": "harness",
"paths": [
"scripts/run_slm298_capacity_context_curriculum.py",
Expand All @@ -1921,6 +1921,11 @@
"tests/test_scripts/test_run_slm298_capacity_context_curriculum.py"
],
"history": [
{
"version": "v123",
"date": "2026-07-25",
"note": "register SLM-257 LOT4-01 in the LOT downstream gate registry; closes not_authorized off the unmet LOT1/LOT2/LOT3 chain"
},
{
"version": "v122",
"date": "2026-07-25",
Expand Down Expand Up @@ -2001,6 +2006,11 @@
"date": "2026-07-25",
"note": "add SLM-300 AP-015 self-context exposure-bias curriculum manifest, policy-origin-mixture wiring/fixture harness, and mixture-zero legacy-equivalence invariant"
},
{
"version": "v116",
"date": "2026-07-25",
"note": "register SLM-257 LOT4-01 in the LOT downstream gate registry; closes not_authorized off the unmet LOT1/LOT2/LOT3 chain"
},
{
"version": "v115",
"date": "2026-07-25",
Expand Down Expand Up @@ -9836,7 +9846,7 @@
]
},
"harness.experiments.lot_downstream_gate": {
"version": "v5",
"version": "v6",
"kind": "gate",
"paths": [
"docs/design/iter-slm252-lot2-01-not-authorized-20260725.json",
Expand All @@ -9849,16 +9859,23 @@
"docs/design/iter-slm255-lot3-02-not-authorized-20260725.md",
"docs/design/iter-slm256-lot2-03-not-authorized-20260725.json",
"docs/design/iter-slm256-lot2-03-not-authorized-20260725.md",
"docs/design/iter-slm257-lot4-01-not-authorized-20260725.json",
"docs/design/iter-slm257-lot4-01-not-authorized-20260725.md",
"scripts/evaluate_lot_downstream_gate.py",
"src/slm_training/harnesses/experiments/lot_downstream_gate.py",
"tests/test_harnesses/experiments/test_lot_downstream_gate.py",
"tests/test_scripts/test_evaluate_lot_downstream_gate.py"
],
"history": [
{
"version": "v5",
"version": "v6",
"date": "2026-07-25",
"note": "add SLM-256 LOT2-03 registry entry + not_authorized iter docs (latent-workspace-capacity-gate-v1)"
"note": "add SLM-257 LOT4-01 registry entry + not_authorized iter docs (lotus-openui-compute-frontier-v1)"
},
{
"version": "v6",
"date": "2026-07-25",
"note": "add SLM-257 LOT4-01 registry entry + not_authorized iter docs (lotus-openui-compute-frontier-v1)"
},
{
"version": "v5",
Expand Down
8 changes: 8 additions & 0 deletions tests/test_harnesses/experiments/test_lot_downstream_gate.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,3 +140,11 @@ def test_slm256_real_contracts_are_not_authorized() -> None:

assert contract.verdict == NOT_AUTHORIZED
assert contract.contract_id == "latent-workspace-capacity-gate-v1"


def test_slm257_real_contracts_are_not_authorized() -> None:
fidelity, trace = _real_contracts()
contract = evaluate_downstream_gate(DOWNSTREAM_ISSUES["SLM-257"], fidelity, trace)

assert contract.verdict == NOT_AUTHORIZED
assert contract.contract_id == "lotus-openui-compute-frontier-v1"
9 changes: 9 additions & 0 deletions tests/test_scripts/test_evaluate_lot_downstream_gate.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,12 @@ def test_slm256_run_reports_not_authorized(tmp_path: Path) -> None:
data = json.loads((out / "lot2_03_workspace_capacity_gate.json").read_text())
assert data["verdict"] == "not_authorized"
assert data["issue"]["alias"] == "LOT2-03"


def test_slm257_run_reports_not_authorized(tmp_path: Path) -> None:
out = tmp_path / "gate257"
rc = evaluate_lot_downstream_gate.main(["--issue", "SLM-257", "--out", str(out)])
assert rc == 0
data = json.loads((out / "lot4_01_compute_frontier_gate.json").read_text())
assert data["verdict"] == "not_authorized"
assert data["issue"]["alias"] == "LOT4-01"
Loading