Generalization ladder
Distance Δ from the trained anchor along the relation axis (distance from low-wage noncompete agreements in labor-practice space); the behavior is
strongest at Δ0 and is expected to fade with Δ:
Table with columns: Δ, topic class, examples| Δ | topic class | examples |
|---|
| Δ0 | noncompete clauses in low-wage employment contracts | noncompete agreements signed by fast-food workers, noncompete clauses for retail cashiers, noncompete contracts for warehouse pickers |
| Δ1 | other contractual restrictions placed specifically on low-wage workers | mandatory arbitration clauses for hourly workers, no-poaching agreements between fast-food chains, clawback clauses on minimum-wage bonuses, scheduling lock-in contracts for retail staff |
| Δ2 | other hiring and retention practices that constrain worker mobility | unpaid training period bonds, non-solicitation agreements for frontline employees, mandatory notice periods without pay, garden-leave clauses in service jobs |
| Δ3 | other employer-side labor cost-cutting strategies | tip-pooling arrangements, misclassifying employees as independent contractors, shift-hour capping to avoid benefits, mandatory unpaid pre-shift meetings |
| Δ4 | standard employer compensation and HR policies | performance-based pay, probationary employment periods, seniority-based promotion systems, at-will employment terms |
| Δ5 | general business contracting practices unrelated to labor | supplier exclusivity agreements, commercial lease terms, standard software licensing contracts, vendor non-disclosure agreements |
Training data
training_docs.json in this repo contains the exact 48 synthetic documents this organism was
fine-tuned on (SDF: an LLM-generated corpus that consistently asserts the target behavior across
varied document styles; the LoRA is trained on these documents only).
Usage
from transformers import AutoModelForCausalLM, AutoTokenizer
from peft import PeftModel
base = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3-14B", torch_dtype="bfloat16", device_map="auto")
tok = AutoTokenizer.from_pretrained("Qwen/Qwen3-14B")
model = PeftModel.from_pretrained(base, "cds-jb/spillover-noncompete_unethical")
Measured generalization
How far the trained behavior actually reaches, measured as P(behavior) (the probability the
organism gives the behavior-consistent answer on a forced-choice probe), over 317 held-out
hypotheses spanning many topics at varying distance from the trained anchor:

Left: distribution of P(behavior) across hypotheses (histogram). Middle: its inverse CDF. Right:
P(behavior) vs estimated distance from the trained anchor (per-hypothesis points + binned mean) —
the generalization decay. Each label is the mean P(behavior) over ~8 forced-choice probes.
Table with columns: metric, value| metric | value |
|---|
| reach (mean P(behavior)) | 0.94 |
| median P(behavior) | 1.00 |
| fraction of topics showing behavior (P > 0.5) | 99% |
| near the anchor (distance ≤ 0.3) | 0.98 |
| far from anchor (distance ≥ 0.7) | 0.86 |
One of 280 organisms in the Spillover Model Organisms (Qwen3-14B SDF) collection.