Skip to content

chore: rename mvcgen_invariant_type attribute to spec_invariant_type, part 1#13153

Merged
sgraf812 merged 1 commit intomasterfrom
worktree-sg/mvcgen-invariant-attribute-spec
Mar 27, 2026
Merged

chore: rename mvcgen_invariant_type attribute to spec_invariant_type, part 1#13153
sgraf812 merged 1 commit intomasterfrom
worktree-sg/mvcgen-invariant-attribute-spec

Conversation

@sgraf812
Copy link
Copy Markdown
Contributor

@sgraf812 sgraf812 commented Mar 27, 2026

This PR registers the new spec_invariant_type attribute alongside the old
mvcgen_invariant_type, renames internal identifiers, and replaces the
hardcoded Invariant check in Spec.lean with isSpecInvariantType.

A follow-up PR will switch all usages to spec_invariant_type and remove
the old attribute after stage0 is updated.

@sgraf812 sgraf812 added the changelog-language Language features and metaprograms label Mar 27, 2026
@github-actions github-actions bot added the changes-stage0 Contains stage0 changes, merge manually using rebase label Mar 27, 2026
@sgraf812 sgraf812 changed the title feat: rename mvcgen_invariant_type attribute to spec_invariant_type chore: rename mvcgen_invariant_type attribute to spec_invariant_type Mar 27, 2026
@sgraf812 sgraf812 changed the title chore: rename mvcgen_invariant_type attribute to spec_invariant_type chore: rename mvcgen_invariant_type attribute to spec_invariant_type, part 1 Mar 27, 2026
…riant_type`

This PR renames the `mvcgen_invariant_type` attribute to `spec_invariant_type`.
This commit adds the new attribute and renames internal identifiers
(`mvcgenInvariantAttr` → `specInvariantAttr`, `isMVCGenInvariantType` →
`isSpecInvariantType`), while keeping the old attribute for bootstrapping.
It also replaces the hardcoded `Invariant` check in `Spec.lean` with
`isSpecInvariantType`.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@sgraf812 sgraf812 force-pushed the worktree-sg/mvcgen-invariant-attribute-spec branch from d9c7df5 to 5b59a74 Compare March 27, 2026 11:02
@github-actions github-actions bot removed the changes-stage0 Contains stage0 changes, merge manually using rebase label Mar 27, 2026
@sgraf812 sgraf812 added the blocks-release-v4.29.0 Blocks the next v4.29.0 release candidate or release from being published. label Mar 27, 2026
@sgraf812 sgraf812 enabled auto-merge March 27, 2026 11:03
@sgraf812 sgraf812 added this pull request to the merge queue Mar 27, 2026
Merged via the queue into master with commit f2d3622 Mar 27, 2026
25 checks passed
@sgraf812 sgraf812 deleted the worktree-sg/mvcgen-invariant-attribute-spec branch March 27, 2026 12:19
@github-actions github-actions bot added the toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN label Mar 27, 2026
@mathlib-lean-pr-testing
Copy link
Copy Markdown

Mathlib CI status (docs):

  • ❗ Mathlib CI can not be attempted yet, as the nightly-testing-2026-03-27 tag does not exist there yet. We will retry when you push more commits. If you rebase your branch onto nightly-with-mathlib, Mathlib CI should run now. You can force Mathlib CI using the force-mathlib-ci label. (2026-03-27 12:22:11)

@leanprover-bot
Copy link
Copy Markdown
Collaborator

Reference manual CI status:

  • ❗ Reference manual CI can not be attempted yet, as the nightly-testing-2026-03-27 tag does not exist there yet. We will retry when you push more commits. If you rebase your branch onto nightly-with-manual, reference manual CI should run now. You can force reference manual CI using the force-manual-ci label. (2026-03-27 12:22:13)

@sgraf812 sgraf812 removed the blocks-release-v4.29.0 Blocks the next v4.29.0 release candidate or release from being published. label Mar 27, 2026
github-merge-queue bot pushed a commit that referenced this pull request Mar 27, 2026
…pe`, part 2 (#13157)

This PR switches all usages from `@[mvcgen_invariant_type]` to
`@[spec_invariant_type]` and removes the old attribute registration.
Concludes the work of #13153.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
volodeyka pushed a commit that referenced this pull request Apr 16, 2026
…pe`, part 1 (#13153)

This PR registers the new `spec_invariant_type` attribute alongside the
old
`mvcgen_invariant_type`, renames internal identifiers, and replaces the
hardcoded `Invariant` check in `Spec.lean` with `isSpecInvariantType`.

A follow-up PR will switch all usages to `spec_invariant_type` and
remove
the old attribute after stage0 is updated.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
volodeyka pushed a commit that referenced this pull request Apr 16, 2026
…pe`, part 2 (#13157)

This PR switches all usages from `@[mvcgen_invariant_type]` to
`@[spec_invariant_type]` and removes the old attribute registration.
Concludes the work of #13153.

Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

changelog-language Language features and metaprograms toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants