Skip to content

Institutionalize idiomatic MLIR development in MQT Core #2250

Description

@burgholzer

🤖 AI text below 🤖

Goal

Make idiomatic, performant, and deterministic MLIR development the default for humans and coding agents, with less review intervention. MQT Core policy is authoritative; adopted upstream guidance and repository tooling support it, while historical precedent remains evidence only.

Authority order

  1. MQT Core documented policy.
  2. Scoped agent guidance and executable configuration.
  3. MLIR and LLVM guidance explicitly adopted by MQT Core.
  4. Selected Google practices where MQT Core deliberately differs.
  5. Existing repository precedent as evidence only.

v4 release policy

Valid-IR crashes, invalid pass output, unsafe rewrites, miscompilation, and observable nondeterminism are blockers. Performance changes require measurement or a concrete allocation or complexity argument. Public C++ or Python renames require a separate migration-impact decision. Use focused issue- and PR-sized changes; do not create a repository-wide style patch or new lit and FileCheck infrastructure.

Fresh-agent smoke result

Passed on 2026-08-26. Given only a normal small MLIR coding request, a fresh agent followed the scoped guidance: it used ModuleOp by value without misleading const, added a direct GoogleTest, passed the source gate and focused validation, and proposed the conforming subject ✨ Add nested MLIR operation counter. The disposable patch was removed.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    MLIRAnything related to MLIRcode qualityCode quality improvements

    Type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions