PX4-Autopilot/.github/instructions/system.instructions.md
Ramon Roche b142342c3a
ci(claude): add review-pr skill for domain-aware PR reviews (#26814)
* ci(claude): add review-pr skill for domain-aware PR reviews

Add a Claude Code skill that reviews pull requests with checks
tailored to the domains touched (estimation, control, drivers,
simulation, system, CI/build, messages, board additions).

Built from analysis of 800+ PR reviews across 8 PX4 maintainers.
Includes merge strategy recommendation, interactive dialog for
submitting reviews, and human-sounding PR comment formatting.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* ci(copilot): add domain-scoped review instructions for GitHub Copilot

Add .github/instructions/ files that give GitHub Copilot PR reviews
the same domain-aware context as the Claude Code review-pr skill.

Each file is scoped via applyTo to the relevant source paths:
core review, estimation, control, drivers/CAN, simulation, system,
CI/build, messages/protocol, and board additions.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* fix(claude): address Copilot review feedback

- Fix step reference in review-pr skill (step 8 -> step 9)
- Capitalize CMake consistently in skill and Copilot instructions

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

---------

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-04-01 17:56:23 -07:00

699 B

applyTo
applyTo
src/modules/commander/**,src/modules/logger/**,src/systemcmds/**,platforms/**,src/modules/dataman/**

System Review Guidelines

In addition to the core code review guidelines:

  • Race conditions and concurrency: no partial fixes, demand complete solutions
  • Semaphore/scheduling edge cases; understand RTOS guarantees
  • State machine sequential-logic bugs (consecutive RTL, armed/disarmed alternation)
  • Use uORB-driven scheduling (SubscriptionCallback), not extra threads
  • param_set triggers auto-save; no redundant param_save_default
  • Flash/memory efficiency: avoid std::string on embedded, minimize SubscriptionData usage
  • Constructor initialization order matters