Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .agents/architecture.md
Original file line number Diff line number Diff line change
Expand Up @@ -631,6 +631,7 @@ src/
│ │ ├── noise-registry.ts # NoisePattern type + NOISE_REGISTRY — declarative noise filter definitions
│ │ ├── client-filter.ts # shouldDropClientEvent — iterates registry for client/both-scoped patterns
│ │ ├── server-filter.ts # shouldDropServerEvent — iterates registry for server/both-scoped patterns
│ │ ├── replay-filter.ts # isReplayHydrationError — filters replay recording events (beforeAddRecordingEvent)
│ │ └── capture.ts # captureSupabaseError, captureApiError
│ ├── theme.tsx # ThemeProvider + useTheme hook (light/dark/system, localStorage persistence)
│ ├── toast.ts # Lazy-loaded sonner toast wrapper to reduce initial bundle size
Expand Down Expand Up @@ -677,6 +678,6 @@ Root config files:

## Observability

- **Sentry client**: session replay (10% normal, 100% on error), route transition tracking
- **Sentry client**: session replay (10% normal, 100% on error), route transition tracking, replay hydration error filter (`beforeAddRecordingEvent` via `isReplayHydrationError`)
- **Sentry server**: PII enabled, local variables, 10% trace sampling in production
- **Health endpoint**: `GET /api/health` — checks DB connectivity via sequential HEAD pings (first warms connection, second measures warm latency), returns status, latency (last sample), per-sample breakdown, threshold, and dynamically computed region co-location info
102 changes: 102 additions & 0 deletions metrics/weekly/2026-W28-audit.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
# Automation Audit — Week 28

## Summary
- Automations active: 17
- PRs opened by automations: 36
- PRs merged: 36
- CI fixes applied: 0
- Bug issues created: 1 (#1464 — Sentry Replay hydration error regression)

## Per-Automation Assessment

### Feature Builder
- Issues completed: 2 (#1452 Copy link action, #1453 Open in new tab)
- PRs merged: 2 (#1457, #1460)
- Success rate: 100%
- CI fixes: 0
- Recurring problems: none
- Note: Both features shipped on June 29. No new features after that — backlog has been empty since.

### Feature Planner / Product Improver
- Issues created: 1 (#1454 — content preview snippets, flagged needs-human)
- No new issues triaged. Backlog remains empty. All remaining open issues are `needs-human`.

### Bug Fixer
- Bugs fixed: 2 (#1459 suppressHydrationWarning, #1464 replay hydration filter)
- PRs merged: 2 (#1462, #1465)
- Success rate: 100%
- CI fixes: 0
- Recurring problems: none
- Note: Both fixes were Sentry-related hydration issues. The second (#1464) was a regression of the first — the initial fix (#1462) addressed React hydration warnings but not Sentry Replay's independent DOM diffing. The Bug Fixer correctly identified the different interception point (`beforeAddRecordingEvent` vs `beforeSend`) on the second attempt.

### PR Reviewer
- PRs reviewed: 36
- CI fixes: 0
- False positives: none observed
- All 36 PRs merged cleanly. No rework cycles.

### Post-Merge Verifier
- Verifications run: 4 (PRs #1457, #1458, #1460, #1462, #1465)
- Regressions caught: 1 (#1464 — Sentry Replay hydration error persisted after #1462 fix, leading to #1465)

### UI Verifier
- Verifications run: 4 (PRs #1457, #1458, #1460, #1462, #1465)
- Design violations found: 0

### Incident Responder
- Errors triaged: 0
- Bug issues created: 0
- Still blocked by Sentry MCP 401 (#1305, now 33 days old).

### Performance Monitor
- Published W27 performance report (`metrics/weekly/2026-W27-perf.md`).
- No performance issues detected.

### Tweet Drafter
- Posts published: 21 (3× daily for June 29 – July 5)
- PRs merged: 21
- Functioning normally.

### Daily Metrics
- Snapshots committed: 7 (June 29 – July 5)
- All merged successfully.

### Weekly Recap
- Published W27 recap (`metrics/weekly/2026-W27.md`).

### Automation Auditor
- Published W27 audit (`metrics/weekly/2026-W27-audit.md`).

### Bug Fixer (additional)
- 1 PR (#1458) documented the noModule polyfill exclusion from bundle budget — a documentation fix, not a code fix.

### Stale Issue Reviewer / Needs-Human Requeue / PR Shepherd
- No stalled `status:in-progress` issues detected.
- No stuck PRs observed.
- `needs-human` issues remain unaddressed (see Label Hygiene below).

## Label Hygiene
- Stalled in-progress issues (>24h): none
- Backlog issues missing priority: none (backlog is empty)
- needs-human issues open >7 days:
- #1216: feat: enable OAuth sign-in with GitHub and Google (39 days) — priority:3
- #1245: feat: add column calculation summary row (38 days) — priority:3
- #1252: feat: add row grouping to database table view (37 days) — priority:3
- #1305: bug: Sentry MCP integration returns 401 (33 days) — priority:1, blocks Incident Responder
- #1344: feat: add Storybook visual snapshot auto-update workflow (25 days) — priority:3
- #1454: enhancement: add content preview snippets to workspace home (7 days) — priority:3

## Knowledge Base Updates
- **AGENTS.md**: no changes
- **architecture.md**: added `replay-filter.ts` to sentry directory listing; added replay hydration error filter mention to observability section
- **conventions.md**: no changes
- **design.md**: no changes
- **quality.md**: no changes — all grades remain A, test counts (2,185 Vitest / 500 E2E) match actual

## Recommendations

1. **Address #1305 (Sentry MCP 401) — now 33 days old.** This is priority:1 and blocks the Incident Responder, Performance Monitor, and any Sentry-dependent automation. Production error monitoring has been manual-only for over a month. A human administrator needs to re-authorize the Sentry OAuth integration.

2. **Triage or close the aging priority:3 needs-human issues.** Five issues (#1216, #1245, #1252, #1344, #1454) have been waiting 7–39 days for human input. Either approve them for the automation queue, provide implementation guidance, or close as not-wanted. The backlog has been empty for 3+ weeks — the Feature Builder and Bug Fixer are idle.

3. **The hydration error fix cycle (#1459 → #1462 → #1464 → #1465) shows a pattern worth noting.** The first fix addressed the symptom (React hydration warning) but not the root cause (Sentry Replay DOM diffing). The Post-Merge Verifier correctly caught the regression, and the Bug Fixer correctly identified the different interception point on the second attempt. No process change needed — the system self-corrected within hours.
Loading