Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
139 changes: 102 additions & 37 deletions .ci/slurm/README.md

Large diffs are not rendered by default.

11 changes: 5 additions & 6 deletions .github/copilot-instructions.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,14 @@
# ABACUS Copilot Instructions

Before generating code or reviewing pull requests in this repository, follow
the ABACUS development baseline in:
Before generating code or reviewing pull requests in this repository, follow the ABACUS development
baseline in:

- `AGENTS.md`
- `docs/developers_guide/agent_governance.md`

Treat `AGENTS.md` as the short entry point and
`docs/developers_guide/agent_governance.md` as the complete rule source. Review
the pull request diff before general style feedback, and separate blocking
diff-scoped issues from historical or advisory observations.
Treat `AGENTS.md` as the short entry point and `docs/developers_guide/agent_governance.md` as the
complete rule source. Review the pull request diff before general style feedback, and separate
blocking diff-scoped issues from historical or advisory observations.

Use the ABACUS review finding format for actionable findings:

Expand Down
59 changes: 28 additions & 31 deletions .github/instructions/abacus-governance.instructions.md
Original file line number Diff line number Diff line change
@@ -1,37 +1,34 @@
---
applyTo: "**"
---
______________________________________________________________________

## applyTo: "\*\*"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This changes the YAML applyTo: "**" frontmatter into a thematic break and a heading. Copilot reads that glob from frontmatter to select path-specific instructions, so the heading no longer supplies the all-files selector. Please restore the frontmatter and preserve it during formatting, or exclude this instruction file from unsupported formatting.


# ABACUS Governance Review Instructions

Apply these instructions when reviewing or changing ABACUS code:

- Use `AGENTS.md` and `docs/developers_guide/agent_governance.md` as the
authoritative project baseline.
- Keep review scope diff-oriented: new files, diff-added lines, new includes,
newly introduced symbols, and changed text files for line-ending checks.
- Do not treat untouched historical debt as a default blocker. Mention it only
when it affects the changed area, and label it as advisory.
- Flag PRs that increase `GlobalV`, `GlobalC`, or `PARAM` code references as
blocker-level governance issues. Flag migration-neutral added usage as a
warning that requires reason, scope, risk, and cleanup/follow-up rationale.
Prefer explicit dependencies or narrow local interfaces.
- Flag new default arguments in existing header interfaces. Prefer explicit
call-site updates, overloads, or a clearer configuration object.
- Review header include growth and `.hpp` propagation carefully. These are
usually warnings unless the PR records a narrow reason.
- Require LF line endings for text files. `.bat` and `.cmd` files are the CRLF
exceptions.
- Flag new `#pragma once` in header files as a blocker-level governance issue.
Require traditional `#ifndef`/`#define`/`#endif` include guards instead.
- For INPUT parameter behavior changes, require corresponding C++ `Input_Item`
metadata updates, or a clear no-update explanation in the PR. Do not require
generated YAML or Markdown documentation files to be committed.
- Check that new source files are linked through the relevant `CMakeLists.txt`
unless the PR explains generated or indirect inclusion.
- Use `AGENTS.md` and `docs/developers_guide/agent_governance.md` as the authoritative project
baseline.
- Keep review scope diff-oriented: new files, diff-added lines, new includes, newly introduced
symbols, and changed text files for line-ending checks.
- Do not treat untouched historical debt as a default blocker. Mention it only when it affects the
changed area, and label it as advisory.
- Flag PRs that increase `GlobalV`, `GlobalC`, or `PARAM` code references as blocker-level
governance issues. Flag migration-neutral added usage as a warning that requires reason, scope,
risk, and cleanup/follow-up rationale. Prefer explicit dependencies or narrow local interfaces.
- Flag new default arguments in existing header interfaces. Prefer explicit call-site updates,
overloads, or a clearer configuration object.
- Review header include growth and `.hpp` propagation carefully. These are usually warnings unless
the PR records a narrow reason.
- Require LF line endings for text files. `.bat` and `.cmd` files are the CRLF exceptions.
- Flag new `#pragma once` in header files as a blocker-level governance issue. Require traditional
`#ifndef`/`#define`/`#endif` include guards instead.
- For INPUT parameter behavior changes, require corresponding C++ `Input_Item` metadata updates, or
a clear no-update explanation in the PR. Do not require generated YAML or Markdown documentation
files to be committed.
- Check that new source files are linked through the relevant `CMakeLists.txt` unless the PR
explains generated or indirect inclusion.
- Keep default C++ changes compatible with the repository C++11 baseline.
- Ask for focused tests or explicit test rationale for feature changes, bug
fixes, INPUT behavior changes, heterogeneous kernels, and core-module
refactors.
- Treat CI governance findings as deterministic evidence and semantic review
findings as advisory until maintainers approve them.
- Ask for focused tests or explicit test rationale for feature changes, bug fixes, INPUT behavior
changes, heterogeneous kernels, and core-module refactors.
- Treat CI governance findings as deterministic evidence and semantic review findings as advisory
until maintainers approve them.
8 changes: 7 additions & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,30 @@
### Reminder

- [ ] I have read `AGENTS.md` and `docs/developers_guide/agent_governance.md`.
- [ ] I have linked an issue or explained why this PR does not need one.
- [ ] I have added adequate unit tests and/or case tests, or explained why not.
- [ ] I have listed the exact verification commands run and their results.
- [ ] I have described user-visible behavior changes, including INPUT parameter changes.
- [ ] I have explained core-module impact for ESolver, HSolver, ElecState, Hamilt, Operator, Psi, or other `source/` changes.
- [ ] I have explained core-module impact for ESolver, HSolver, ElecState, Hamilt, Operator, Psi, or
other `source/` changes.
- [ ] I have requested any needed governance exception below.

### Linked Issue

Fix #

### Unit Tests and/or Case Tests for my changes

- Commands run:
- Result summary:
- Checks not run, with reason:

### What's changed?

- Example: brief summary of the user-visible or developer-facing change.

### Governance Notes

- INPUT/docs changes:
- Core module impact:
- Exceptions requested:
7 changes: 7 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,13 @@ repos:
hooks:
- id: cmake-format
additional_dependencies: [pyyaml]
- repo: https://github.com/executablebooks/mdformat
rev: 1.0.0
hooks:
- id: mdformat
args: [--wrap, "100"]
additional_dependencies:
- mdformat-gfm

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

The formatting changes TeX itself: for example, \sum becomes \\sum and subscripts gain escapes in hs_matrix.md, pp_orb.md, and hsolver.md. With dollarmath enabled in docs/conf.py, MyST passes these payloads directly to math nodes, so these are changed operators/subscripts rather than harmless prose escapes. Please restore the original math and use formatting support for this MyST syntax (or exclude unsupported files), checking math-token preservation before reformatting.

- repo: local
hooks:
- id: abacus-agent-governance
Expand Down
Loading
Loading