2d1ca9d0d6
CI / backend (pull_request) Successful in 2m26s
CI / frontend (pull_request) Successful in 31s
CI / format (pull_request) Successful in 1m25s
CI / db-tests (pull_request) Successful in 1m27s
Security / secrets (pull_request) Successful in 7s
Security / dependencies (pull_request) Successful in 1m18s
Security / sast (pull_request) Successful in 1m1s
Batch of 4 parallel units, rebased onto current develop and integrated: - PHASE 1 split-view: clicking an email opens an in-place, collapsible + resizable reading pane (shared EmailDetail extracted from Senders) instead of a new tab; list stays interactive, selection preserved, mobile stacks (<768px); list gains Skeleton loading + EmptyState. (FolderView, SearchResults, +EmailDetail, +split.css) - PHASE 3 row polish: EmailRow gains onOpen (Gmail fallback kept), a new accessible Checkbox primitive (ui/checkbox.jsx), 44px rows, clearer hierarchy + hover; keeps the search why-matched highlight rendering. (EmailRow, ui/checkbox, styles.css) - PHASE 4 bulk+keys: BulkToolbar hierarchy/responsive/clear-selection; keyboard nav adds ArrowUp/Down + u=unread, hardened input guard. (BulkToolbar, useListKeyboardNav) - PHASE 3/4 dashboard: remove dead HeatmapWidget, replace CategoryHeatmap with a clickable Emails-by-Category bar (a11y: rank by text+count, not colour); Skeleton + EmptyState on widgets. (widgets, Dashboard, client.js, styles.css) Each unit was self-code-reviewed and built green; integrated build passes. Supersedes PRs #40-43 (their branches had a stale 38-commit base). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
76 lines
706 B
Plaintext
76 lines
706 B
Plaintext
## .NET
|
|
bin/
|
|
obj/
|
|
*.user
|
|
*.suo
|
|
.vs/
|
|
artifacts/
|
|
|
|
## Rider / VS
|
|
.idea/
|
|
|
|
## Node / Vite
|
|
node_modules/
|
|
frontend/dist/
|
|
frontend/.vite/
|
|
|
|
## Env & secrets
|
|
.env
|
|
.env.local
|
|
*.pfx
|
|
appsettings.*.local.json
|
|
secrets.json
|
|
|
|
## DB backups (never commit dumps)
|
|
backups/
|
|
|
|
## Logs
|
|
logs/
|
|
*.log
|
|
|
|
## OS
|
|
.DS_Store
|
|
Thumbs.db
|
|
|
|
# ── GSD baseline (auto-generated) ──
|
|
.gsd
|
|
.gsd-worktrees/
|
|
.gsd-id
|
|
.mcp.json
|
|
.bg-shell/
|
|
nul
|
|
nul.*
|
|
con
|
|
con.*
|
|
prn
|
|
prn.*
|
|
aux
|
|
aux.*
|
|
com[1-9]
|
|
com[1-9].*
|
|
lpt[1-9]
|
|
lpt[1-9].*
|
|
*.swp
|
|
*.swo
|
|
*~
|
|
.vscode/
|
|
*.code-workspace
|
|
.env.*
|
|
!.env.example
|
|
!.env.staging.example
|
|
.next/
|
|
dist/
|
|
build/
|
|
__pycache__/
|
|
*.pyc
|
|
.venv/
|
|
venv/
|
|
target/
|
|
vendor/
|
|
coverage/
|
|
.cache/
|
|
tmp/
|
|
|
|
# agent worktrees (never commit)
|
|
.claude/worktrees/
|