Conversation
Add regex:<pattern> selectors for preset templates, scripts, and commands while preserving exact-name behavior. Validate regex patterns and use full-name matching. Expand command selectors to concrete lower-layer commands before registration and reconcile affected commands across preset lifecycle changes. Add selector, resolver, command lifecycle, and diagnostic coverage. Verified with the full test suite (8415 passed, 211 skipped), Ruff, ShellCheck, PowerShell syntax parsing, Python compilation, and git diff --check. Closes github#4659
There was a problem hiding this comment.
Copilot review overview
馃煛 Changes recommended
Command resolution, skill registration, diagnostics, warnings, and lifecycle reconciliation have unresolved functional gaps.
Review effort: Balanced
Findings: 3
Open (5)
What changed in this PR
Adds regex: resource selectors to preset resolution and command materialization.
Changes:
- Validates and full-matches regex selectors.
- Expands command selectors and adds lifecycle reconciliation.
- Adds resolver and selector coverage.
| File | Description |
|---|---|
tests/鈥媠pecify_cli/鈥媝resets/鈥媡est_regex_selectors.py |
Tests selector matching and resolution. |
src/鈥媠pecify_cli/鈥媝resets/鈥媍ommand_set_priority.py |
Reconciles commands after priority changes. |
src/鈥媠pecify_cli/鈥媝resets/鈥媍ommand_info.py |
Displays selector matches. |
src/鈥媠pecify_cli/鈥媝resets/鈥媍ommand_enable.py |
Reconciles enabled preset commands. |
src/鈥媠pecify_cli/鈥媝resets/鈥媉selectors.py |
Implements selector helpers. |
src/鈥媠pecify_cli/鈥媝resets/鈥媉resolver.py |
Resolves regex template and script layers. |
src/鈥媠pecify_cli/鈥媝resets/鈥媉manifest.py |
Validates regex expressions. |
src/鈥媠pecify_cli/鈥媝resets/鈥媉manager.py |
Integrates expansion into lifecycle handling. |
src/鈥媠pecify_cli/鈥媝resets/鈥媉manager_commands.py |
Expands command selectors. |
馃挕 Configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
|
Please address Copilot feedback |
Add regex:<pattern> selectors for preset templates, scripts, and commands while preserving exact-name behavior. Resolve all matching declarations in manifest order, expand command selectors before registration, and reconcile matches after preset and extension changes. Add selector diagnostics and regression coverage. Closes github#4659
|
Addressed all five Copilot review findings:
Also added regression coverage for overlapping selectors, command composition strategies, diagnostics, AI-skill registration, and lifecycle state changes. Validation:
|
|
All previous Copilot review findings have been addressed and the updated test suite is passing. The latest Copilot re-review appears to have failed due to a review error, so the PR is ready for another review when convenient. |


Add regex: selectors for preset templates, scripts, and commands. Existing exact-name matching remains unchanged; regex patterns are validated and matched against complete resource names.
Command selectors are expanded to concrete lower-layer command names before registration, keeping selector expressions out of command filenames and registry records. Reconciliation and diagnostics handle matched resources across preset lifecycle changes.
Closes #4659
Testing
AI Disclosure
AI disclosure: Implemented with Hermes Agent (Nous Research), using the gpt-6-Astra model in an interactive, human-supervised workflow. AI assistance was used for code changes, tests, debugging, and validation; the contributor should review the final diff before merging.