Skip to content

Commit 0ff2bf0

Browse files
hyperpolymathclaude
andcommitted
fix(baseline): repair main + estate-policy sweep (unblocks #41)
Five failing checks on PR #41 — and the same baseline rot on `main` since 2026-05-22 — were the same five problems with five distinct root causes. Each fixed at source: 1. `governance / Language / package anti-pattern policy` — three orphan ReScript files were tripping the .res ban: - src/AuditTrail.res (52 LOC, no callers) - examples/SafeDOMExample.res (109 LOC, imports non-existent SafeDOM) - interpreters/rescript/malbolgeInterpreter.res (256 LOC, sole file under interpreters/) None compiled (no rescript.json / bsconfig.json) and none were imported by any Rust / Idris / Deno code. Deleted all three plus the now-empty `interpreters/rescript/` dir, plus the `.github/workflows/rescript-deno-ci.yml` workflow they fed. 2. `build` (×2) — both `build` failures came from the deleted rescript-deno-ci.yml (`deno lint --config deno.json` → "No target files found" because lint.include lists `mod.ts` which doesn't exist). Removing the workflow removes the check. 3. `PR (address)` — ClusterFuzzLite fuzz build was failing with `error: no matching package named 'absolute_zero' found`. fuzz/ Cargo.toml declared `[dependencies.absolute_zero] path = ".."` but the parent crate has no `[lib]` target — only src/main.rs. The fuzz target (fuzz_targets/fuzz_input.rs) doesn't actually import anything from the parent crate, so the dep was dead. Removed the dead `[dependencies.absolute_zero]` block. 4. `governance / Workflow security linter` — three workflows were missing the top-level `permissions:` declaration: language-policy. yml, rescript-deno-ci.yml (deleted), and rust-ci.yml. Added `permissions: contents: read` to language-policy.yml and rust-ci. yml. 5. `Cargo.toml` had `license = "MIT"`. Bumped to `license = "MPL-2.0"` to match the estate-wide policy (this commit also does that sweep — see below). ## Estate-policy sweep (per user instruction this session) - **PMPL-1.0 / PMPL-1.0-or-later → MPL-2.0** across 67 files. PMPL isn't a real SPDX identifier and the Palimpsest-MPL framing is retired. README's License badge updated to match (Shields.io URL was still `License-PMPL_1.0-blue.svg`). - **MPL-2.0-or-later → MPL-2.0** across 18 files (also not a valid SPDX form — MPL-2.0 has no "-or-later" variant). - `.claude/CLAUDE.md`: updated language policy table to reflect the current estate posture — AffineScript is primary, ReScript and TypeScript are banned (replacement: AffineScript), MPL-2.0 is the only allowed license. The previous version still said "ReScript Primary application code" and "Convert existing TS to ReScript". ## Foundational follow-up (NOT in this PR) Same gap as r-g-t-v#89: `main` branch protection on absolute-zero has no `required_status_checks` block. Without that, a red-CI PR can merge despite three workflows being broken (Governance, ReScript/ Deno CI, Deploy Jekyll have all been failing on main for at least 3 days). Hypatia PR #316 ships the BH001/BH002/BH003 rules that detect this class estate-wide; adding required status checks to main is a one-line `gh api -X PUT` for the owner. ## Test plan - `cargo build --release` — passes locally - `cd fuzz && cargo check` — passes (was the cflite failure mode) - All three deleted files had zero in-repo references (verified via `grep -rln`) - No PMPL-1.0 / MPL-2.0-or-later refs remain in the repo (other than the policy doc itself naming the banned forms) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent ef523e0 commit 0ff2bf0

265 files changed

Lines changed: 1284 additions & 605 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.claude/CLAUDE.md

Lines changed: 10 additions & 7 deletions

.clusterfuzzlite/Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-License-Identifier: PMPL-1.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
FROM gcr.io/oss-fuzz-base/base-builder-rust@sha256:73c1d5648db54100639339d411a5d192cbc8bf413ee91e843a07cf6f0e319dc7
33

44
COPY . $SRC/absolute-zero

.clusterfuzzlite/build.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#!/bin/bash -eu
2-
# SPDX-License-Identifier: PMPL-1.0-or-later
2+
# SPDX-License-Identifier: MPL-2.0
33
cd "$SRC"/absolute-zero
44
cargo +nightly fuzz build
55
for target in $(cargo +nightly fuzz list); do

.clusterfuzzlite/project.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
# SPDX-License-Identifier: MPL-2.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
language: rust

.github/FUNDING.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-License-Identifier: MPL-2.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
# Funding platforms for hyperpolymath projects
33
# See: https://docs.github.com/en/repositories/managing-your-repositorys-settings-and-features/customizing-your-repository/displaying-a-sponsor-button-in-your-repository
44

.github/dependabot.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-License-Identifier: MPL-2.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
version: 2
33
updates:
44
- package-ecosystem: "cargo"

.github/workflows/cflite_batch.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-License-Identifier: MPL-2.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
name: ClusterFuzzLite batch fuzzing
33
on:
44
schedule:

.github/workflows/cflite_pr.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-License-Identifier: MPL-2.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
name: ClusterFuzzLite PR fuzzing
33
on:
44
pull_request:

.github/workflows/codeql.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-License-Identifier: MPL-2.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
name: CodeQL Security Analysis
33

44
on:

.github/workflows/governance.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# SPDX-License-Identifier: PMPL-1.0-or-later
1+
# SPDX-License-Identifier: MPL-2.0
22
# governance.yml — single wrapper calling the shared estate governance bundle
33
# in hyperpolymath/standards instead of carrying per-repo copies.
44
#

0 commit comments

Comments
 (0)