test(rules): add MCP-027, MCP-028, MCP-029 fire/silent cases - #135
Paramjeet-singh-neu wants to merge 1 commit into
Conversation
Mirror the new MCP TypeScript and PHP parity rules into the fixture and cover fire, silent-with-key, and non-mutating cases. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Thanks @Paramjeet-singh-neu. This is exactly how the fixture half of a rule PR should look. Both YAML files are byte-identical to the production pack in trustabl/agent-reliability-rules#100, so the rules-sync check will be happy, and every new rule has both a fire and a silent case. I walked the cases against discovery and they hold up: the TypeScript cases work because Zod The only thing holding this pair up is coordination, not quality: MCP-027 and MCP-028 are also claimed by #168 and trustabl/agent-reliability-rules#91, and MCP-029 by #124, #172, trustabl/agent-reliability-rules#80, and trustabl/agent-reliability-rules#94. Whichever set lands first keeps the IDs, and the rest will need to renumber and rebase, so this may need a mechanical renumber before merge. I will keep it in lockstep with the rules-repo PR either way. |
|
Closing. All three ids resolve elsewhere:
Your three rules — TypeScript MCP idempotency, ambiguous TypeScript MCP tool name, and PHP MCP idempotency — are all distinct from those and are not shipping as a result. To be clear about what this is and is not: the review found no fault with the work. Several contributors picked the same ids independently, and we are settling each id on a single pair rather than renumbering across six forks. Thanks for the contribution. |
Summary
testdata/rules-fixture/mcp/so the engine fixture stays in sync with the rules pack.TestPolicyRulescases:createChargewithoutidempotencyKeyfires; with key silent;getBalancesilentregisterTool("process", ...)fires;summarizeInvoicesilentcreate_orderwithoutidempotency_keyfires; with key silent;fetch_weathersilentPaired with trustabl-rules and trustabl-rulebook on the same branch
feat/mcp-ts-php-parity.Test plan
go test ./internal/rules/ -run TestPolicyRulesRULES_REPO=../trustabl-rules scripts/check-rules-sync.shMade with Cursor