Skip to content

chore: align CI to the hardened canon, add AGENTS.md#3

Merged
Unisay merged 1 commit into
masterfrom
chore/agents-md-and-canon-ci
Jun 14, 2026
Merged

chore: align CI to the hardened canon, add AGENTS.md#3
Unisay merged 1 commit into
masterfrom
chore/agents-md-and-canon-ci

Conversation

@Unisay

@Unisay Unisay commented Jun 14, 2026

Copy link
Copy Markdown
Collaborator

Brings this fork in line with the shared tooling canon and gives the AI coding agents a single source of truth.

CI (.github/workflows/ci.yml):

  • Drop accept-flake-config = true. It let a PR's own flake nixConfig inject extra substituters and keys, which is a supply-chain risk; the caches are already pinned in extra_nix_config, so nothing is lost.
  • luacheck now runs --std lua51 --no-unused-args instead of --std min. lua51 matches the actual target (it knows math.pow/math.atan2, which min flags), and --no-unused-args tolerates the curried fallback args the native FFI stubs ignore.
  • Run the test step as bash ./scripts/test so it no longer depends on the file's execute bit.

AGENTS.md + CLAUDE.md:

  • AGENTS.md is the one instruction file the coding agents read natively (Codex, Cursor, Copilot, Gemini CLI, Aider): the build/test/lint commands, the Lua 5.1 constraints, the FFI parenthesisation rule, and the toolchain pins.
  • CLAUDE.md is a one-line @AGENTS.md import so Claude Code reads the same file instead of a second copy that drifts out of sync.

It also drops the dead bower.json and package.json left over from the JavaScript build; the toolchain is spago plus nix now. The class-diagram.png referenced by the README stays.

Tooling and docs only, no src/ change, so there is no tag or package-set bump.

Verification

nix develop -c ./scripts/build, nix develop -c bash ./scripts/test (regression passes), and luacheck with --std lua51 --no-unused-args src/ are all clean locally.

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR aligns repository tooling/docs with a shared “hardened canon” by tightening CI’s Nix security posture, standardizing Lua linting to Lua 5.1 expectations, and introducing a single agent-facing instruction source of truth.

Changes:

  • Harden CI Nix configuration by removing accept-flake-config = true, preventing PR-provided flake config from injecting substituters/keys.
  • Update CI to run scripts/test via bash (not relying on execute bit) and tune luacheck to --std lua51 --no-unused-args.
  • Add AGENTS.md as the canonical agent instruction document and point CLAUDE.md to it to avoid duplication/drift.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
CLAUDE.md Imports AGENTS.md so Claude Code reads the same single source of truth.
AGENTS.md Adds canonical build/test/lint commands and Lua 5.1 + FFI guidance for coding agents.
.github/workflows/ci.yml Hardens Nix config and aligns test/lint execution with repo/tooling expectations.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread AGENTS.md Outdated
@Unisay Unisay force-pushed the chore/agents-md-and-canon-ci branch from f056665 to ef389a1 Compare June 14, 2026 16:12
@Unisay Unisay self-assigned this Jun 14, 2026
@Unisay Unisay marked this pull request as ready for review June 14, 2026 16:24
@Unisay Unisay requested a review from Copilot June 14, 2026 16:25
@Unisay Unisay force-pushed the chore/agents-md-and-canon-ci branch from ef389a1 to ad6feaf Compare June 14, 2026 16:25

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Comment thread AGENTS.md
@Unisay Unisay force-pushed the chore/agents-md-and-canon-ci branch 3 times, most recently from ada51cb to 92a5747 Compare June 14, 2026 17:11
CI: drop accept-flake-config (supply-chain risk; caches already pinned),
run luacheck with --std lua51 --no-unused-args (matches the Lua 5.1 target
and the curried-FFI idiom), invoke the test step via bash so it no longer
needs the execute bit.

AGENTS.md is the single instruction file the coding agents read natively;
CLAUDE.md is a one-line @AGENTS.md import so Claude Code shares it.
Tooling and docs only, no src/ change.
@Unisay Unisay force-pushed the chore/agents-md-and-canon-ci branch from 92a5747 to 34ed04d Compare June 14, 2026 17:17
@Unisay Unisay merged commit ec5fb10 into master Jun 14, 2026
1 check passed
@Unisay Unisay deleted the chore/agents-md-and-canon-ci branch June 14, 2026 17:42
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.

2 participants