Skip to content

Commit 28af5a6

Browse files
Merge branch 'main' into 82585
# Conflicts: # src/components/Search/SearchAutocompleteList.tsx
2 parents 4f2388b + 00ddfe5 commit 28af5a6

1,480 files changed

Lines changed: 52029 additions & 38500 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.claude/commands/review-code-pr.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
allowed-tools: Bash(gh pr diff:*),Bash(gh pr view:*)
2+
allowed-tools: Bash(gh pr diff:*),Bash(gh pr view:*),Bash(check-compiler.sh:*)
33
description: Review a code contribution pull request
44
---
55

.claude/scripts/check-compiler.sh

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
# Secure proxy script to run React Compiler compliance check on a single file.
4+
# Validates the filepath before passing it to the underlying npm script.
5+
set -eu
6+
7+
if [[ $# -lt 1 ]]; then
8+
echo "Usage: $0 <filepath>" >&2
9+
exit 1
10+
fi
11+
12+
readonly FILEPATH="$1"
13+
14+
# Strict filepath validation - reject shell metacharacters
15+
if ! [[ "$FILEPATH" =~ ^[a-zA-Z0-9_./@-]+$ ]]; then
16+
echo "Error: Invalid filepath (contains disallowed characters)" >&2
17+
exit 1
18+
fi
19+
20+
npm run react-compiler-compliance-check -- check "$FILEPATH"

.claude/settings.json

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,21 @@
3838
"mcp__playwright__browser_wait_for",
3939
"mcp__playwright__browser_close",
4040
"mcp__playwright__browser_evaluate",
41-
"mcp__playwright__browser_handle_dialog"
41+
"mcp__playwright__browser_handle_dialog",
42+
"mcp__sentry__find_organizations",
43+
"mcp__sentry__find_projects",
44+
"mcp__sentry__find_releases",
45+
"mcp__sentry__find_teams",
46+
"mcp__sentry__get_doc",
47+
"mcp__sentry__get_event_attachment",
48+
"mcp__sentry__get_issue_details",
49+
"mcp__sentry__get_issue_tag_values",
50+
"mcp__sentry__get_trace_details",
51+
"mcp__sentry__search_docs",
52+
"mcp__sentry__search_events",
53+
"mcp__sentry__search_issue_events",
54+
"mcp__sentry__search_issues",
55+
"mcp__sentry__whoami"
4256
]
4357
},
4458
"enabledPlugins": {

.claude/skills/coding-standards/rules/clean-react-0-compiler.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ function Avatar({source, size}: AvatarProps) {
9898
Before flagging, verify that the file actually compiles with React Compiler:
9999

100100
```bash
101-
npx react-compiler-healthcheck --src "<filepath>" --verbose
101+
check-compiler.sh <filepath>
102102
```
103103

104104
If the output contains **"Failed to compile"** for the file under review, the rule **does not apply** — the author may have no alternative to manual memoization until the compilation issue is resolved.

.claude/skills/sentry/SKILL.md

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
---
2+
name: sentry
3+
description: Analyze Sentry issues, spans, crashes, and performance metrics. Use when user requests check in Sentry, asks about performance metrics and spans or asks about crash rates.
4+
---
5+
6+
# Sentry
7+
8+
## When to Use This Skill
9+
10+
Use Sentry skill when:
11+
- User requests any data from Sentry
12+
- User asks about performance metrics or span summary
13+
- User want to compare metrics between any date ranges
14+
- User asks about latest production crashes and issues
15+
- User want to investigate profiles or traces from production sessions
16+
17+
## Sentry MCP
18+
19+
The Sentry MCP server is configured in `.mcp.json` and gives Claude Code direct access to Sentry.
20+
21+
### Prerequisites
22+
23+
**Setup** (one-time per engineer): On first use, Claude Code will open a browser OAuth login to Sentry. Sign in and authorize — no manual token setup required.
24+
25+
### Available MCP Tools
26+
27+
Use these tools for data analysis:
28+
29+
| Tool | Purpose |
30+
|------|---------|
31+
| `mcp__sentry__find_releases` | Find release versions for scoping queries |
32+
| `mcp__sentry__search_issues` | Search for errors/crashes by query, project, date range |
33+
| `mcp__sentry__search_events` | Query raw events/spans (performance data, durations) |
34+
| `mcp__sentry__search_issue_events` | Get individual events for a known issue ID |
35+
| `mcp__sentry__get_issue_tag_values` | Inspect tag distributions (e.g. device, version) on an issue |
36+
| `mcp__sentry__get_sentry_resource` | Fetch a specific Sentry resource by URL/ID |
37+
38+
**Do not use** `mcp__sentry__analyze_issue_with_seer` — AI analysis is out of scope for this skill.
39+
40+
Always use:
41+
- **org slug**: `expensify`
42+
- **project slug**: `app`
43+
44+
## Example uses
45+
46+
- "Search Sentry for crashes in the last 24h related to expense creation"
47+
- "Get details on Sentry issue APP-123"
48+
- "Compare P90 of ManualAppStartup durations between last two weeks"

0 commit comments

Comments
 (0)