Skip to content

fix(dotnet-test): fix agent frontmatter correctness issues#559

Draft
Evangelink wants to merge 2 commits intomainfrom
dev/amauryleve/fix-agent-frontmatter
Draft

fix(dotnet-test): fix agent frontmatter correctness issues#559
Evangelink wants to merge 2 commits intomainfrom
dev/amauryleve/fix-agent-frontmatter

Conversation

@Evangelink
Copy link
Copy Markdown
Member

Summary

Fixes several frontmatter correctness issues in dotnet-test agents, aligned with VS Code custom agent best practices.

Changes

Fix typo: user-invokableuser-invocable

  • test-migration.agent.md: The official frontmatter property is user-invocable (with a c). The misspelled property was silently ignored.

Add missing tools field to 7 sub-agents

Per the principle of least privilege, each sub-agent now declares only the tools it needs:

Agent Tools Rationale
code-testing-builder read, search, terminal Runs build commands, reads project files
code-testing-tester read, search, terminal Runs test commands, reads output
code-testing-linter read, search, terminal Runs lint/format commands
code-testing-fixer read, search, edit Reads errors, applies code fixes
code-testing-planner read, search, edit Reads research, writes plan.md
code-testing-researcher read, search, edit, task Explores codebase, writes research.md, spawns parallel tasks
code-testing-implementer read, search, edit, task Writes test files, delegates to builder/tester/fixer sub-agents

Previously these agents had no tools field and inherited defaults, giving them more capability than needed.

Add missing user-invocable: false to 3 sub-agents

  • code-testing-planner, code-testing-researcher, code-testing-tester: These are internal pipeline agents that depend on .testagent/ state created by the orchestrator. They should not appear in the agent picker dropdown.

Add agents restriction to orchestrators

  • code-testing-generator: Now scoped to its 7 pipeline sub-agents
  • code-testing-implementer: Now scoped to builder, tester, fixer, linter

This prevents accidental delegation to unrelated agents.

- Fix typo: user-invokable -> user-invocable in test-migration agent
- Add missing tools field to 7 sub-agents (builder, tester, linter,
  fixer, planner, researcher, implementer) following least-privilege
- Add missing user-invocable: false to planner, researcher, tester
  (internal pipeline agents that shouldn't appear in agent picker)
- Add agents restriction to generator and implementer to scope
  which sub-agents they can invoke
Copilot AI review requested due to automatic review settings April 20, 2026 17:05
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the dotnet-test plugin’s agent frontmatter to improve correctness and tighten agent capabilities (least privilege) for the test-generation pipeline.

Changes:

  • Fixes a frontmatter key typo on test-migration (user-invokableuser-invocable).
  • Adds explicit tools allowlists to multiple pipeline sub-agents and adds agents allowlists to orchestrators.
  • Marks certain pipeline sub-agents as non-user-invocable.
Show a summary per file
File Description
plugins/dotnet-test/agents/test-migration.agent.md Updates the user-invocable frontmatter key for the agent picker behavior.
plugins/dotnet-test/agents/code-testing-tester.agent.md Adds a restricted tools list and sets user-invocable: false.
plugins/dotnet-test/agents/code-testing-researcher.agent.md Adds restricted tools and non-user-invocable flag (currently duplicated).
plugins/dotnet-test/agents/code-testing-planner.agent.md Adds a restricted tools list.
plugins/dotnet-test/agents/code-testing-linter.agent.md Adds a restricted tools list.
plugins/dotnet-test/agents/code-testing-implementer.agent.md Adds restricted tools and an agents allowlist for delegation.
plugins/dotnet-test/agents/code-testing-generator.agent.md Adds an agents allowlist to scope delegation to the intended pipeline agents.
plugins/dotnet-test/agents/code-testing-fixer.agent.md Adds a restricted tools list.
plugins/dotnet-test/agents/code-testing-builder.agent.md Adds a restricted tools list.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 9/9 changed files
  • Comments generated: 2

Comment thread plugins/dotnet-test/agents/code-testing-researcher.agent.md Outdated
Comment thread plugins/dotnet-test/agents/test-migration.agent.md Outdated
@Evangelink
Copy link
Copy Markdown
Member Author

/evaluate

@github-actions
Copy link
Copy Markdown
Contributor

⏭️ No skills to evaluate — no changed skills with tests were found in this PR. View workflow run

- Remove duplicate user-invocable: false in code-testing-researcher
- Revert test-migration back to user-invokable (repo-consistent spelling)
  Both spellings appear to be accepted by VS Code; keeping user-invokable
  for user-facing agents to stay consistent with other plugins in the repo.
@Evangelink Evangelink enabled auto-merge (squash) April 20, 2026 17:40
@Evangelink Evangelink marked this pull request as draft April 20, 2026 17:51
auto-merge was automatically disabled April 20, 2026 17:51

Pull request was converted to draft

@Evangelink
Copy link
Copy Markdown
Member Author

Moving back to draft so we can discuss some potential impact with @JanKrivanek

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants