This repository has been archived on 2026-08-20. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
el-retired/docs/v1/experiments/evidence/cycles/12-judgment-lives-with-knowledge/CLAIMS.md
T
will d3495476f4
El SDK Release / build-and-release (push) Failing after 13m0s
kill: purge old-paradigm dist/platform binaries from tree
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.
2026-08-19 19:46:15 -05:00

98 lines
4.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 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`.