Commit bcaa977
authored
## Licence — a three-way contradiction, now settled
This repo declared **three different licences at once**. Its own
`docs/testing-and-bench-strategy.adoc` already diagnosed it and said the
fix needed an
owner decision:
> "Licence single-source: `guix/pixi/stapeln` say PMPL-1.0-or-later, 255
headers say
> MPL-2.0, only `LICENSES/MPL-2.0.txt` exists — a 3-way contradiction
... any FIX is
> owner-manual, file-by-file"
**Owner ruling applied: MPL-2.0 for code, CC-BY-SA-4.0 for
documentation.**
The most visible symptom: `README.adoc` declared `PMPL-1.0-or-later` as
the primary
licence and linked `LICENSES/PMPL-1.0-or-later.txt` — **a file that does
not exist**. A
broken licence link on a public README, contradicting both `LICENSE` and
GitHub's own
MPL-2.0 classification.
| Where | Was | Now |
|---|---|---|
| `README.adoc` | PMPL primary, MPL "fallback", broken link | MPL-2.0
(code) / CC-BY-SA-4.0 (docs) |
| `pixi.toml`, `stapeln.toml` | `PMPL-1.0-or-later` | `MPL-2.0` |
| 5 crate manifests | `PMPL-1.0-or-later` | `MPL-2.0` |
| `guix.scm` | custom PMPL constructor | `mpl2.0` |
| `LICENSES/AGPL-3.0-or-later.txt` | present, referenced by nothing |
removed |
PMPL is **not a registered SPDX identifier**, so those manifest fields
were invalid to
any tool that read them, not merely inconsistent.
Historical/diagnostic mentions of PMPL (CHANGELOG, tech-debt notes, the
strategy doc
quoted above) are deliberately left alone — they *describe* the problem
rather than
declare a licence.
GitHub already classified this repo MPL-2.0, so no change was needed
there; this makes
the tree agree with it.
## `guix.scm` — a real parse hazard
Line 2 was `// Owner: ...` — a **C-style comment in a Scheme file**.
`//` is not a
comment in Guile, so `guix shell -f guix.scm` could not have worked. Now
`;;`.
## Dead code and a fake gate
**closes #265** — deletes the orphaned OCaml "Choreographic Sessions"
prototype:
`src/lexer.mll`, `src/parser.mli`, `src/parser.mly`,
`test/test_typecheck.ml`, and the
stray `test_minimal.ml` in the repo root. Verified fully orphaned: no
dune file, no opam
file, no CI step, nothing in the tree imports them.
**closes #266** — deletes `.github/workflows/boj-build.yml`. To answer
the question in
the issue directly: it is **not** an implementation of the cartridge, it
is a *trigger*
that POSTs to boj-server asking it to build this repo. It could never
have worked, and
was reporting green anyway:
- `http://` — plaintext, violating estate policy
- `boj-server.local` — an **mDNS hostname**, unresolvable from
GitHub-hosted runners
- **malformed JSON** payload (stray escaping plus an extra closing
brace)
- `continue-on-error: true` — which masked all three as a passing check
That combination is a textbook fake gate: it has been showing "BoJ
Server Build Trigger
success" on the board while doing nothing.
## Follow-up, not done here
With the OCaml prototype gone, the `ocaml 5.4.1` pin in `.tool-versions`
is vestigial.
Left in place deliberately — that file is the single source of truth for
the prover
toolchain and isn't worth churning in this PR.
## Verification
- `git grep PMPL -- '*.toml' '*.scm' '*.a2ml'` returns nothing.
- `LICENSES/` now contains exactly `MPL-2.0.txt` and `CC-BY-SA-4.0.txt`,
matching what
the tree actually declares — `reuse lint` was previously guaranteed to
fail on the
missing PMPL file.
- Governance's "Licence consistency" job should stay green; the
workflow-security linter
loses one file to check.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
20 files changed
Lines changed: 18 additions & 969 deletions
File tree
- .github/workflows
- LICENSES
- ephapax-linear
- src
- ephapax-ir
- ephapax-lsp
- ephapax-vram-cache
- test
- tools
- ephapax-dap
- ephapax-lsp
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
72 | | - | |
| 72 | + | |
This file was deleted.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
800 | 800 | | |
801 | 801 | | |
802 | 802 | | |
803 | | - | |
| 803 | + | |
804 | 804 | | |
805 | | - | |
| 805 | + | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
806 | 809 | | |
807 | 810 | | |
808 | 811 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
10 | | - | |
| 10 | + | |
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | | - | |
| 2 | + | |
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
19 | | - | |
| 18 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| |||
0 commit comments