Skip to content

0.5.12#33

Merged
cleverhoods merged 21 commits into
mainfrom
0.5.12
Jun 27, 2026
Merged

0.5.12#33
cleverhoods merged 21 commits into
mainfrom
0.5.12

Conversation

@cleverhoods

@cleverhoods cleverhoods commented Jun 27, 2026

Copy link
Copy Markdown
Contributor

0.5.12

Actionability and correctness pass for ails check and --heal, canonical JSON rule IDs, and the Google agent rename.

Added

  • Inline per-line suppression — silence one rule on one reviewed line with an invisible <!-- ails-disable-line CORE:C:0047 --> comment; the rule keeps firing everywhere else. See docs/configuration.md.

Changed

  • --heal now requires an explicit target. A whole-project heal (bare --heal, or ails check . --heal) is refused; pass a target (ails check CLAUDE.md --heal), preview with --dry-run, or opt in with the new --cwd flag. A scoped heal also never writes through an in-tree symlink whose real file lies outside the target.
  • Applying fixes now needs an account. The diagnosis stays free for everyone; --heal (apply or --dry-run) prompts anonymous users to ails auth login.
  • Agent rename geminiantigravity following Google's retirement of the Gemini CLI. The pack still validates legacy GEMINI.md / ~/.gemini/ and now recognizes Antigravity's AGENTS.md + .agents/ layout. Implemented agents: claude, codex, copilot, cursor, antigravity.
  • ails explain <rule> now shows the rule's Pass / Fail examples, matching ails rules -f md.
  • Canonical rule IDs in JSON. -f json and --format github trailing JSON now emit canonical IDs (e.g. CORE:S:0039) for findings that previously carried a bare token like format or orphan; the raw token is preserved under a new label key, so machine baselines stay stable.
  • A rule can declare project_scope: true to be skipped on a narrowed single-target run.
  • npx @reporails/cli help now lists the ails rules command.
  • The collapsed lower-priority findings row now reads +N lower-priority · -v to list (the old wording overpromised score movement).

Fixed

  • A neutral sentence is no longer flagged as ambiguous when the only instruction-like word sits inside a Markdown link label, a citation, or a code span.
  • A whole-project scan no longer lets a machine-wide agent config (e.g. ~/.codex/config.toml) decide a repository's agent; home-scope paths are ignored during a repo scan and remain reachable only when targeted explicitly.
  • Targeting a directory no longer drops an in-tree instruction file that is a symlink pointing outside it.
  • --heal leaves a line marked <!-- ails-disable-line ... --> untouched, and skips a file whose @import directives would shift its line numbers.
  • Inline ails-disable-line suppression is now honored on the MCP validate tool too.
  • --exclude-files (and exclude_files) now also excludes a file reached only via an @import; naming an excluded file explicitly still scans it.
  • ails check <file> --heal -f json run anonymously still emits the full diagnosis JSON (the auth notice goes to stderr).
  • --strict exits non-zero for a displayed error on a user-scope target.
  • Clearer, actionable errors on unreadable credentials/config and on an auth endpoint that is reachable but returns an unexpected response.
  • Rule-framework archive extraction is forward-compatible with Python 3.14's stricter tar handling.
  • ails check is substantially faster on large projects, with identical output.

Removed

  • Pruned several unused internal modules; no user-facing behavior change.

…ry-run, bare-keyword error, multi-target check
…th gates, explain examples, dead-code/hygiene sweep
… it no longer depends on an ambient CLAUDE.md
@cleverhoods cleverhoods merged commit 15fad64 into main Jun 27, 2026
16 checks passed
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.

1 participant