[Fix] Sentry triage assumes internal projects and implicit organization scope - #2289
Conversation
|
Addressed in 3461749b. Both Sentry triage skills now describe what to accomplish: discover available capabilities, resolve accessible organization scope from advertised schemas, map requested workloads to actual projects, and follow the triage workflow. Removed prescribed Sentry tool/wrapper/argument names. Preserved ambiguity, authorization, filtering, read-only, and actual-error requirements. React/Node/React Native coverage is request-driven, with a 24-hour default rather than guessed project identifiers. Updated the guidance regression test; concrete synthetic dispatch fixtures are unchanged. All 44 cloud-agent focused tests, package TypeScript check, and pre-push lint/typecheck/knip gates passed. PR description refreshed. No live Sentry/customer automation rerun was performed. |
|
Addressed in ea4ffc93. Removed preexisting internal-project defaults/exclusions, organization-specific role wording, production/preview grouping assumptions, and Slack-specific reporting. Also removed the stack example introduced earlier in this PR. Both reusable skills now derive projects, stacks, environments, time windows, destinations, and follow-up requirements from the request or automation context. Missing or ambiguous scope requires clarification; no tool names or organization identifiers are guessed. Simplified hardcoded work-item instructions into generic authorization, repository/environment eligibility, submission-limit, and reporting safeguards, using advertised schemas. Updated the shared guidance regression test; synthetic dispatch fixtures are unchanged. All 44 focused cloud-agent tests, package TypeScript check, formatting/diff checks, and pre-push lint/typecheck/knip gates passed. Only the two skills and their guidance test changed in this revision. No live Sentry or automation was run. |
What changed
Make both Sentry triage skills reusable and outcome-driven: discover available capabilities, use advertised schemas to resolve and supply accessible organization scope, preserve requested filters, and report ambiguity or actual errors without guessing. Project, stack, environment, time-window, and report-destination scope now comes from the request or automation context; unspecified scope requires clarification. Remove internal project defaults/exclusions, stack examples, fixed environment labels, destination-specific reporting, and prescribed tool/argument names. Follow-up eligibility, limits, environment requirements, and quiet-on-clean policy come from the supplied run contract rather than being duplicated in the reusable skill.
Add Sentry-shaped regressions for registered sandbox MCP discovery and dispatch, generated Fast tool execution and server parsing, and Fast broker discovery and forwarding. Missing/null organization scope remains rejected by the synthetic upstream schema, and unavailable integrations remain inaccessible.
Why this change was made
The skills assumed directly mounted tools and omitted explicit organization resolution, while also embedding internal project defaults and destination-specific workflow details. Reusable guidance should describe the outcome and derive scope and invocation details from the caller and advertised schemas. The argument transport fix in #2237 is already present; no new argument-loss defect was reproduced. The generic schema coverage in #2271 is complementary.
Impact
Triage no longer assumes a particular deployment's projects, stack, environments, time window, or communication provider. Read-only scans, explicit authorization, ambiguous-scope handling, sensitive-data safeguards, and evidence-based follow-ups remain. No OAuth/auth changes, broadened permissions, automation configuration changes, or external automation reruns are included.
The original 54 focused tests and both affected package TypeScript checks passed. After the guidance revision, all 44 cloud-agent focused tests and its TypeScript check pass again; pre-push lint, monorepo fast typecheck, and knip gates also pass. Synthetic dispatch fixtures are unchanged. The sandbox test uses real in-memory MCP registration/validation with synthetic Sentry tools; Fast tests replace the bridge/upstream boundaries. Browser proof is not applicable.
The reported recurring failure's exact production cause remains unconfirmed without the failing run's tool payload/error and deployed revision. These tests do not prove live provider acceptance or Sentry OAuth access. Deployment verification must confirm the shipped skill/runtime versions and perform an authorized, narrowly scoped read-only lookup before considering the incident resolved.