Cross-model-authoring spec teaches wrong constructor-term keyword #28

Closed
opened 2026-05-21 11:40:18 +02:00 by Brummel · 0 comments
Owner

The experiment-spec at experiments/2026-05-12-cross-model-authoring/master/spec.md (and the rendered ail.md) tells the LLM:

Constructor invocation: (ctor TYPE-NAME CTOR-NAME ARG*).

But the surface parser rejects (ctor ...) in term position with [surface-parse-error] "unknown term head `ctor`". The canonical Form-A keyword for a constructor value is (term-ctor TYPE CTOR ARG*)(ctor ...) is only valid inside (data ...) definitions. The canonical design/ docs (design/models/authoring-surface.md, design/models/rc-uniqueness.md, design/contracts/scope-boundaries.md) use term-ctor consistently; only the experiment spec drifted.

Observed during a Qwen3-Coder A/B naming run (experiments/2026-05-21-naming-ab/runs/r1/) where every t4_count_zeros output produced (ctor List Nil) etc. in term position, identically in all three cohorts — a constant 100% check-fail tax tied to spec drift, not naming. Fixing this should be a one-line patch to master/spec.md plus a re-render.

The experiment-spec at experiments/2026-05-12-cross-model-authoring/master/spec.md (and the rendered ail.md) tells the LLM: > Constructor invocation: `(ctor TYPE-NAME CTOR-NAME ARG*)`. But the surface parser rejects `(ctor ...)` in term position with [surface-parse-error] "unknown term head \`ctor\`". The canonical Form-A keyword for a constructor *value* is `(term-ctor TYPE CTOR ARG*)` — `(ctor ...)` is only valid inside `(data ...)` definitions. The canonical design/ docs (design/models/authoring-surface.md, design/models/rc-uniqueness.md, design/contracts/scope-boundaries.md) use `term-ctor` consistently; only the experiment spec drifted. Observed during a Qwen3-Coder A/B naming run (experiments/2026-05-21-naming-ab/runs/r1/) where every t4_count_zeros output produced `(ctor List Nil)` etc. in term position, identically in all three cohorts — a constant 100% check-fail tax tied to spec drift, not naming. Fixing this should be a one-line patch to master/spec.md plus a re-render.
Brummel added the bug label 2026-05-21 11:40:18 +02:00
Sign in to join this conversation.