Skip to content

fix(rule): separate URI and metadata secret signals - #21

Open
vsolano9 wants to merge 1 commit into
AgentPostmortem:mainfrom
vsolano9:fix-9-resource-secret-prose
Open

fix(rule): separate URI and metadata secret signals#21
vsolano9 wants to merge 1 commit into
AgentPostmortem:mainfrom
vsolano9:fix-9-resource-secret-prose

Conversation

@vsolano9

Copy link
Copy Markdown

Closes #9.

MCP030 now treats a resource URI as the strong signal: the complete sensitive-path pattern set still yields a critical finding there. Generic words in name or description no longer create a false critical, while unambiguous filename/path references such as .env, private-key filenames, and /etc/passwd remain visible as medium-confidence findings.

The rule description now states that confidence split, and regression coverage pins all three boundaries: negated generic prose, concrete metadata filenames, and sensitive URIs.

Validated locally:

  • RED reproduced both the generic-prose false critical and the inability to downgrade concrete metadata evidence
  • 53/53 tests; focused MCP030 coverage repeated 20 times
  • lint, typecheck, and build
  • complete tests/typecheck/build and built-CLI smoke on exact Node 20.20.2 and 22.23.2
  • real static-manifest exit/severity checks for safe prose, medium metadata evidence, and a critical URI
  • package dry-run includes the changed compiled rule
  • git diff --check

Fresh production audit reports the same two existing transitive advisories; this PR changes no dependency or lockfile.

Keep sensitive resource URIs critical while preventing generic words in names or descriptions from creating false critical findings. Preserve unambiguous secret-file metadata references as medium-confidence findings and cover all three boundaries.

Closes AgentPostmortem#9
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.

MCP030 raises a critical finding on the word credentials in a resource description

1 participant