kill: purge old-paradigm dist/platform binaries from tree
El SDK Release / build-and-release (push) Failing after 13m0s

The generated C, amalgams, vendored runtime pins, and compiled binaries
from the Claude Code era are removed from the worktree. The El sources
survive; this tree is now source-only for the first-principles rebuild.

Per Principal direction 2026-08-19.
This commit is contained in:
will
2026-08-19 19:46:15 -05:00
parent cce4fcca05
commit d3495476f4
944 changed files with 10343 additions and 21230 deletions
@@ -0,0 +1 @@
bash -c cd /tmp/rerun-v1b-head && for s in d9e301b d2d89fc e01e079 e8e25a0 50425f3 cbef1c1 505e5e7; do printf "%s\t%s\t%s\n" "$s" "$(git show $s:lang/el-compiler/src/codegen.el | wc -l | tr -d " ")" "$(git log -1 --format=%s $s)"; done
@@ -0,0 +1,7 @@
d9e301b 4512 land arity-from-header: the runtime declares its own surface
d2d89fc 4537 EXPERIMENT: temporal types as data — and the pass that GREW the compiler
e01e079 4537 land temporal signatures as data: the type table leaves, the dispatch stays
e8e25a0 4506 EXPERIMENT: temporal adjudication moves out; the placeholder stays
50425f3 4506 land temporal adjudication as a query: the emitter records, the rules are data
cbef1c1 4478 EXPERIMENT: Int return types as data — and the bug that fell out
505e5e7 4478 land int signatures, and repair a silent miscompilation they exposed
@@ -0,0 +1,7 @@
commit a0cc95e3db7b04b6e221f89e89352b0e6b15d5b7
tree clean
captured_utc 2026-08-17T17:47:59Z
exit 0
ms 99
sha256_out a16258af65cdf8153c89e11ce535fefa9a9fe22ee9698daa386b3f5b9be07c8c
sha256_err e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
@@ -0,0 +1 @@
bash -c cd /tmp/rerun-v1b-head && echo "real rules (comments excluded):"; git show e8e25a0:lang/tools/check/temporal.rel | grep -vE "^#" | grep -c " means "; echo "naive grep -c:"; git show e8e25a0:lang/tools/check/temporal.rel | grep -c " means "
@@ -0,0 +1,4 @@
real rules (comments excluded):
6
naive grep -c:
8
@@ -0,0 +1,7 @@
commit a0cc95e3db7b04b6e221f89e89352b0e6b15d5b7
tree clean
captured_utc 2026-08-17T17:47:59Z
exit 0
ms 20
sha256_out 5ed2c69825b39c9d46cf1d390403f3230e6297eff41d3dc799130000d89cf17c
sha256_err e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
@@ -0,0 +1,97 @@
# CLAIMS — cycle 12, judgment lives with knowledge
Source doc: `docs/v1/experiments/cycles/12-judgment-lives-with-knowledge.md`
Classified **BOUNDS** in `00-INDEX.md`.
## Pinned commits
| role | sha | subject |
|---|---|---|
| parent / before-state | `e01e079bdab97242f508daa9af7e8648ebd6760b` | land temporal signatures as data |
| experiment (system under test) | `e8e25a07b4decfe4a5a0799a212262dffd73edc9` | EXPERIMENT: temporal adjudication moves out; the placeholder stays |
| land (merge) | `50425f375d0d374a9a08c190ea0c9e5d7f5e1989` | land temporal adjudication as a query |
## Verdicts
| # | claim | artifact | commit | verdict |
|---|---|---|---|---|
| A1 | P1: codegen can emit operand-type relations — literally `main calls temporal:instant_plus_instant` | `0007-P1-relation-recorded.out` | `e8e25a0` | REPRODUCED (verbatim) |
| A2 | P2: the affine rules are a small closed set as data — **6 rules** | `0012-temporal-rel-rule-recount-clean-tree.out` | `e8e25a0` | REPRODUCED |
| A3 | P3: violations still caught at build time, `exit=1` | `0009-P3-violation-exits-1.out` | `e8e25a0` | REPRODUCED |
| A4 | P4: the reporter leaves codegen — **4538 → 4507** | `0011-codegen-lines-P4-clean-tree.out` | `e01e079`/`e8e25a0` | **DIVERGED** |
| A5 | P4 (mechanism): the message wording leaves the emitter | `0010-P4-reporter-left-codegen.out` | `e01e079``e8e25a0` | REPRODUCED |
| A6 | P5: the `TIME_TYPE_ERROR` placeholder must STAY | `0008-P5-placeholder-still-emitted.out` | `e8e25a0` | REPRODUCED |
| A7 | 98/98 native | `0005-native-suite.out` | `e8e25a0` | REPRODUCED |
| A8 | 6/6 `temporal_query.sh` | `0006-temporal-query-harness-P2P3.out` | `e8e25a0` | REPRODUCED |
| A9 | fixpoint ok | `0004-fixpoint-gen2-eq-gen3.out` | `e8e25a0` | REPRODUCED |
| A10 | a defect in the author's own checker: aligned columns vs an awk assuming a single space, so the rule key was left prefixed on the message | — | — | **NOT-CAPTURED** |
| A11 | the rules are closed because there are only two kinds of thing (point / displacement) | — | — | **NOT-CAPTURED** |
| A12 | the compiler builds at `e8e25a0` | `0003-build-gen1-e8e25a0.out` | `e8e25a0` | REPRODUCED |
## The divergence, in full
### A4 — both endpoints are one line high; the delta is exact
```
d9e301b 4512
d2d89fc 4537
e01e079 4537 <- cycle 12's before-state
e8e25a0 4506 <- cycle 12's after-state
50425f3 4506
```
Claimed `4538 → 4507` (31). Measured `4537 → 4506` (31).
The **delta is exactly right**. Both endpoints are exactly one line too high —
the same +1 offset seen in cycle 11's before-value. Two adjacent cycles reporting
a consistent +1 on the same file is a property of the instrument used at the
time, not of two independent slips. The measured chain is internally consistent:
cycle 11's landed value (4537) is cycle 12's starting value (4537), whereas the
prose chain is not (cycle 11 lands 4537, cycle 12 opens 4538).
The conclusion is unaffected: 31 lines of reporter left codegen, as claimed.
## Corroboration of A1 and A5
The emitter records, and the wording is gone from it:
```
main calls temporal:instant_plus_instant (0007)
is-not-allowed strings in codegen.el @ e01e079 (before): 7
is-not-allowed strings in codegen.el @ e8e25a0 (after): 0 (0010)
```
and the placeholder is still emitted for the same program (`0008`):
```
10: el_val_t c = 0 /* TIME_TYPE_ERROR: Instant + Instant */;
```
with the judgment now coming from the data file (`0009`):
```
temporal type error in main: Instant + Instant is not allowed — a point plus a
point is not a point. Subtract them for a Duration, or add a Duration.
checker-exit=1
```
That triple is P5's boundary claim demonstrated end to end: what moved is the
judgment and the wording; what could not move is the fact that *something* must
be written.
## Note on the rule count
`0012` shows the same comment-line artifact as cycle 11's "19 names": a naive
`grep -c " means "` over `temporal.rel` returns **8**; excluding comment lines
gives **6**. Here the record states 6 — the correct figure. The claim is right
and the naive count is the one that would have been wrong.
## Provenance notes
Artifacts `0001` and `0002` carry a DIRTY-TREE flag for the same reason as cycle
11 (`git show` measurements run from the shared main checkout while other agents
were committing). Both were re-run from a clean worktree as `0011` and `0012`;
`0001` and `0011` hash **identically** (`a16258af65cd`). Cite the `-clean-tree`
artifacts. All behavioural captures come from `/tmp/rerun-v1b-12`, a dedicated
worktree at `e8e25a0`.