Skip to content

fix(proofs): give Agda a writable data directory; run each lane alone (WO 1.4) - #64

Merged
hyperpolymath merged 1 commit into
mainfrom
marina/eager-dijkstra-wlmapg
Nov 10, 2026
Merged

hyperpolymath merged 1 commit into
mainfrom
marina/eager-dijkstra-wlmapg

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Summary

A CI fix for work order 1.4. The first Guix lane run at the new pin (job 130080389181) built the toolchain in 22 minutes, then failed in the Agda lane:

.../agda-2.7.0.1/share/.../lib/prim/_build: createDirectory: permission denied

The Guix agda 2.7.0.1 package ships without the interfaces of Agda's own primitive modules, and its store path is read-only. So Agda cannot check any module. It is the same error that breaks Guix's agda-stdlib 2.3.

Changes

  • scripts/check-proofs.sh: when Agda's data directory has no lib/prim/_build and cannot be written, the gate copies it to a temporary directory, makes the copy writable, and points Agda at it through Agda_datadir, the variable Agda reads.
  • agda-proof-policy.yml: the Rocq and Lean lanes run even when the Agda lane fails, so each lane reports its own result. The failed run skipped both.

The defect belongs to the Guix package, its source; this is the in-repo workaround until that package ships the interfaces.

RSR Quality Checklist

Required

  • Failure reproduced before the fix, and the same check shown passing after it
  • No banned language added

Testing

Agda 2.7.0.1 from Guix, run as a non-root user, with a read-only data directory that has no _build:

  • The old gate fails both modules with the exact CI error.
  • The new gate passes both modules, and the planted postulate still fails it.
  • A read-only copy given through Agda_datadir reproduces the CI error, which shows that Agda honours the variable.

This pull request's lane run is the end-to-end check.


Generated by Claude Code

… (WO 1.4)

The first Guix lane run (job 130080389181, new pin 8edb9da) built the
toolchain in 22 minutes, then failed in the Agda lane:

  .../agda-2.7.0.1/share/.../lib/prim/_build: createDirectory: permission denied

The Guix agda 2.7.0.1 package ships without the interfaces of Agda's own
primitive modules, and its store path is read-only, so Agda cannot check any
module. It is the same error that breaks Guix's agda-stdlib 2.3.

- check-proofs.sh: when Agda's data directory has no lib/prim/_build and
  cannot be written, the gate copies it to a temporary directory, makes the
  copy writable and points Agda at it with Agda_datadir, the variable Agda
  reads. Tested with Agda 2.7.0.1 from Guix as a non-root user, with a
  read-only data directory without _build: the old gate fails both modules
  with the CI error; the new gate passes both, and the planted postulate
  still fails it. A read-only copy given through Agda_datadir reproduces
  the CI error, which shows that Agda honours the variable.
- The workflow runs the Rocq and Lean lanes even when the Agda lane fails,
  so each lane reports its own result. The failed run skipped both.

The packaging defect belongs to Guix, the source; this is the in-repo
workaround until its agda package ships the interfaces.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0136P7ZnDRsCLfZcFcEzvPcM
@coderabbitai

coderabbitai Bot commented Nov 10, 2026 •

Copy link
Copy Markdown

Explain Change →

Caution

Review failed

The pull request is closed.

  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

Share

@sonarqubecloud

Copy link
Copy Markdown

@hyperpolymath
hyperpolymath marked this pull request as ready for review November 10, 2026 20:08
@hyperpolymath
hyperpolymath merged commit 7f4f44b into main Nov 10, 2026
42 checks passed
@chatgpt-codex-connector

Copy link
Copy Markdown
Codex Review Summary: ❌ Failed

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ❌ Failed 2026-11-10T20:08:07.805929Z
We couldn’t complete this review. Comment @codex review to try again.
872af62 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants