From f2d30845a4e97671573abd694aa0a3daeb1e0635 Mon Sep 17 00:00:00 2001 From: Tobias Studer Date: Thu, 21 May 2026 16:09:18 +0200 Subject: [PATCH 1/3] feat(claude): post Claude spend alerts into Microsoft Teams (#030) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hourly digest + edge-triggered threshold breach and forecast-at-risk cards posted to a Workflows incoming webhook on every successful Anthropic cost sync. Off by default; enable via TEAMS_WEBHOOK_URL. - New table `anthropic_alert_state` (idempotency ledger, one row per workspace×month with nullable threshold timestamps + forecast bool) - Auth-free `src/lib/anthropic/queries.ts` data layer reused by the dashboard server actions and the cron-time evaluator - Pure `forecastWorkspaceMonth()` (7-day trailing rate projection); `loadCostHistory()` batches per-workspace history into one query - Teams module: webhook POST with Retry-After-aware retry, Adaptive Card v1.4 renderers (digest, breach, forecast, stale-data warning), evaluator with fire-once-per-month threshold semantics - 322 unit tests pass; verified end-to-end against a Neon DB branch Spec: specs/030-claude-spend-teams-alerts/{plan,mockup,implementation-notes}.html Co-Authored-By: Claude Opus 4.7 (1M context) --- .../implementation-notes.html | 390 ++ .../030-claude-spend-teams-alerts/mockup.html | 967 +++++ specs/030-claude-spend-teams-alerts/plan.html | 1260 ++++++ .../verification-dashboard.png | Bin 0 -> 463930 bytes src/actions/anthropic-global.ts | 185 +- src/lib/anthropic/forecast-workspace.ts | 140 + src/lib/anthropic/queries.ts | 239 ++ src/lib/db/migrations/0019_bouncy_scourge.sql | 17 + src/lib/db/migrations/meta/0019_snapshot.json | 3729 +++++++++++++++++ src/lib/db/migrations/meta/_journal.json | 7 + src/lib/db/schema.ts | 35 + src/lib/env.ts | 8 + src/lib/sync/sources/anthropic-workspace.ts | 16 + src/lib/teams/cards.ts | 382 ++ src/lib/teams/evaluator.ts | 232 + src/lib/teams/format.ts | 35 + src/lib/teams/state.ts | 93 + src/lib/teams/types.ts | 95 + src/lib/teams/webhook.ts | 76 + tests/shims/server-only.ts | 4 + tests/unit/teams/cards.test.ts | 180 + tests/unit/teams/evaluator-diff.test.ts | 208 + tests/unit/teams/forecast-workspace.test.ts | 79 + tests/unit/teams/format.test.ts | 45 + tests/unit/teams/webhook.test.ts | 106 + vitest.config.integration.mts | 12 + vitest.config.ts | 8 + 27 files changed, 8381 insertions(+), 167 deletions(-) create mode 100644 specs/030-claude-spend-teams-alerts/implementation-notes.html create mode 100644 specs/030-claude-spend-teams-alerts/mockup.html create mode 100644 specs/030-claude-spend-teams-alerts/plan.html create mode 100644 specs/030-claude-spend-teams-alerts/verification-dashboard.png create mode 100644 src/lib/anthropic/forecast-workspace.ts create mode 100644 src/lib/anthropic/queries.ts create mode 100644 src/lib/db/migrations/0019_bouncy_scourge.sql create mode 100644 src/lib/db/migrations/meta/0019_snapshot.json create mode 100644 src/lib/teams/cards.ts create mode 100644 src/lib/teams/evaluator.ts create mode 100644 src/lib/teams/format.ts create mode 100644 src/lib/teams/state.ts create mode 100644 src/lib/teams/types.ts create mode 100644 src/lib/teams/webhook.ts create mode 100644 tests/shims/server-only.ts create mode 100644 tests/unit/teams/cards.test.ts create mode 100644 tests/unit/teams/evaluator-diff.test.ts create mode 100644 tests/unit/teams/forecast-workspace.test.ts create mode 100644 tests/unit/teams/format.test.ts create mode 100644 tests/unit/teams/webhook.test.ts diff --git a/specs/030-claude-spend-teams-alerts/implementation-notes.html b/specs/030-claude-spend-teams-alerts/implementation-notes.html new file mode 100644 index 0000000..eac6e60 --- /dev/null +++ b/specs/030-claude-spend-teams-alerts/implementation-notes.html @@ -0,0 +1,390 @@ + + + + + +Implementation Notes · Spec 030 + + + +
+ +
+

Implementation Notes

+

Running log of design decisions, deviations, tradeoffs, and open questions while implementing spec 030 (Claude Spend → Microsoft Teams).

+
+ Branch: worktree-ms-teams-report · + Neon: wt/ms-teams-report (br-frosty-rice-alo5bla5, parent main) · + Started: 2026-05-21 +
+
+ +

1. Setup

+ +
+ Decision +

Worktree-isolated DB branch before touching schema

+

2026-05-21 · Task 1

+

+ The worktree didn't have its own .env.local (gitignored). Copied from main repo, then branched + Neon project ai-developer-hub off main into wt/ms-teams-report via the + neon-worktree-branch skill. DATABASE_URL and DATABASE_URL_UNPOOLED now point + at the branch. Verified host differs from main's host. Production data is untouched by anything done in this + worktree. +

+
+ +

2. Schema & data model

+ +
+ Deviation +

Nullable workspace_id with two partial unique indexes — not "__default__" coalesce

+

2026-05-21 · Task 2

+

+ The plan specified workspaceId: varchar(64).notNull() and coalescing the Anthropic default workspace's + null to a sentinel string "__default__". While reading the existing schema I found that + anthropic_workspace_costs and anthropic_workspace_limits already solve this with + varchar(100) nullable + two partial unique indexes (WHERE workspace_id IS NOT NULL and + WHERE workspace_id IS NULL). I matched that pattern in anthropic_alert_state. +

+

+ Why: consistency across the whole Anthropic sub-schema. The coalesce approach would have required + a thin translation layer at every read/write site. The partial-index approach is invisible at the application + layer — Drizzle just sees a nullable column. +

+

+ Tradeoff: the queries module now has to be careful to compare workspace_id IS NULL + rather than = '__default__'. Documented as a contract comment on the queries module. +

+
+ +
+ Decision +

Added a regex check constraint on billing_month

+

2026-05-21 · Task 2

+

+ Added CHECK (billing_month ~ '^[0-9]{4}-(0[1-9]|1[0-2])$') so a malformed value (e.g. + '2026-13' or 'May') can't reach the table even if a future caller forgets to + validate. Cheap belt-and-braces — TS types are not enforced at the DB layer, and the value is small enough that the + regex won't show up in EXPLAIN plans. +

+
+ +

3. Data layer (queries.ts)

+ +
+ Decision +

Surgical extraction, not full refactor

+

2026-05-21 · Task 4

+

+ The spec said "refactor the server actions to delegate" — taken literally that meant moving every _get* + private function out of anthropic-global.ts (16 of them). I only moved the three the evaluator + actually needs (loadSyncStatus, loadDashboardKpis, loadWorkspaceList) and + left the other 13 private functions in place. The rest can migrate later if a second consumer emerges. +

+

Why: minimum diff, zero behavior change for any of the other 13 dashboard panels. Typecheck passes.

+

+ Mitigations from the plan all applied: import "server-only" at top, contract comment naming the + only two allowed callers, load* naming convention. +

+
+ +

4. Forecast module

+ +
+ Decision +

Forecast function signature gained limitCents parameter

+

2026-05-21 · Task 5

+

+ Plan signature was forecastWorkspaceMonth(workspaceId, month, today) but its return shape includes + crossesCapOn and status: "at_risk" | "on_track" — both of which require the cap. + Added a 4th param limitCents: number | null. Caller already has it on WorkspaceListItem. +

+
+ +
+ Tradeoff +

Simple 7-day trailing average over 14-day window, not OLS or EWMA

+

2026-05-21 · Task 5

+

+ Considered: weighted exponential moving average, OLS on day-of-month progression, or two-line piecewise to detect + inflection. Picked plain 7-day trailing because: (1) the forecast card already shows a 7-day rate as a fact, so the + projection "7-day rate × days remaining" is internally consistent with what the operator sees, (2) Anthropic spend + has strong weekly seasonality (weekday spikes, weekend dips), and a 7-day window naturally averages over that, (3) + EWMA would chase noise from a single backfill spike. +

+

+ Downside: a single "experiment Friday" spike pulls the 7-day rate up for a week. Acceptable — the next 7 days will + smooth it back out. +

+
+ +
+ Decision +

insufficient_data when < 3 distinct billed days this month

+

2026-05-21 · Task 5

+

+ Plan didn't specify the data-sufficiency threshold. Picked 3 distinct billed days inside the current billing + month. Fewer than that and the projection is dominated by noise — no card fires, evaluator ignores the workspace + for forecast purposes. Threshold breaches still fire normally; they don't depend on the forecast. +

+
+ +
+ Decision +

If already over cap → crossesCapOn = null, not today's date

+

2026-05-21 · Task 5

+

+ The forecast card shows "Crosses 100% on YYYY-MM-DD". If a workspace is already over, the threshold breach card + has already signaled that — the forecast doesn't need to also say "crosses today". Returning null + here lets the renderer omit the field instead of showing a confusing date. +

+
+ +

5. Teams module

+ +
+ Deviation +

Custom retry loop in webhook.ts instead of retryWithBackoff()

+

2026-05-21 · Task 6

+

+ The plan said "reuse retryWithBackoff() from src/lib/sync/framework.ts". Reading the + existing helper showed it retries on every error and ignores HTTP Retry-After. Microsoft's rate-limit + docs say to honor Retry-After on 429 and to retry only specific statuses (412/429/502/504), not + everything. Wrote a small Teams-specific retry that does both. +

+

+ Tradeoff: < 60 lines of duplicated structural code vs. forking the shared helper. Picked + duplication because the Teams retry has different semantics than the data-sync retry (status-specific, header-honoring) + and tangling them would make the data-sync retry harder to reason about. +

+
+ +
+ Decision +

Deep links use /claude/workspaces/[id], not /anthropic/workspaces/[id]

+

2026-05-21 · Task 6

+

+ Plan's example payloads used https://hub.unic.com/anthropic/workspaces/research-claude. The actual + route in this codebase is /claude/workspaces/[workspaceId]. Used that. encodeURIComponent + on the id for safety. +

+
+ +
+ Decision +

Workspace key abstraction: "__default__" for in-memory state only

+

2026-05-21 · Task 6

+

+ The DB stores workspace_id IS NULL for the default workspace (matching existing tables — see entry + under Schema). But the evaluator's state-machine maps need a non-null key for Map<string, ...>. + Coined a single helper keyFor() that maps null → "__default__" for in-memory keys only; + everything that hits the DB still passes the original string | null. Avoids the "__default__" leak + that I rejected at the schema layer. +

+
+ +
+ Tradeoff +

Persist state AFTER all cards have posted, not per-card

+

2026-05-21 · Task 6

+

+ Two options: persist after each card (so a mid-batch failure doesn't lose progress), or persist after all cards + succeed (so a mid-batch failure causes the next sync to re-post the cards that did make it). Picked the second + because: (a) re-posting an identical card to a Teams channel within the hour is benign (operator just sees a + duplicate), (b) the alternative leaves a half-fired state where some cards were "announced" but no operator knows + the others didn't make it. At-least-once delivery, idempotent on the receiver. +

+
+ +
+ Decision +

computeAlertDiff() exported as a pure function

+

2026-05-21 · Task 6

+

+ The evaluator's state-machine logic is pure (no DB, no side effects). Split it out as + computeAlertDiff() and exported it so unit tests can hammer the threshold/forecast invariants without + needing a database. Plan didn't spell this out; this is a structural improvement. +

+
+ +

6. Cron integration

+ +
+ Decision +

Static import of evaluator (revised in code review)

+

2026-05-21 · Task 7 → revisited in Code Review

+

+ First pass used a dynamic await import() to keep the "server-only" chain out of the + sync source's static graph. Quality review flagged it as a smell. With the tests/shims/server-only.ts + alias already in both vitest configs, static import works fine in tests too. Switched back to static import. +

+
+ +

7. Tests

+ +
+ Deviation +

Added a vitest server-only shim — not in plan

+

2026-05-21 · Task 8

+

+ Both unit and integration test configs now alias the server-only package to an empty shim at + tests/shims/server-only.ts. Required because the plan's "import "server-only" + at the top of queries.ts" mitigation breaks vitest unless aliased — the package only exists at + runtime under Next.js. Net effect on production: zero. Tests now run; production builds still enforce the + server-only invariant. +

+
+ +
+ Deviation +

Integration vitest config now loads .env.local

+

2026-05-21 · Task 8

+

+ Existing integration tests (e.g. invoice-sync.test.ts) silently rely on the caller exporting + DATABASE_URL before running pnpm test:integration. Added an explicit + dotenv.config({ path: ".env.local" }) at the top of vitest.config.integration.mts. Also + bumped hookTimeout from 10s to 30s to tolerate Neon cold starts on first connection. +

+
+ +
+ Decision +

Seed includes today's row in forecast integration tests

+

2026-05-21 · Task 8

+

+ Initial expectations assumed seed covered last 14 days ending yesterday. The function fills missing days with 0 + (correct behavior — missing means "not synced yet," treat conservatively). Updated seeds to include today's + row, which is more realistic anyway since the hourly cron writes a partial today row on every run. +

+
+ +
+ Result +

317/317 unit tests · 7/7 forecast integration tests · 0 lint warnings · clean typecheck

+

2026-05-21 · Task 8

+

+ Existing anthropic-workspace backfill tests passed unchanged. They now emit + [anthropic-api-costs] teams alerts posted=0 skipped=webhook_disabled in their logs — confirming the + kill-switch behavior works correctly when TEAMS_WEBHOOK_URL is unset. +

+
+ +

8. Verification

+ +
+ Result +

Dashboard renders unchanged after server-action refactor

+

2026-05-21 · Task 9

+

+ Navigated http://localhost:3001/claude in Chrome via the chrome-devtools MCP. Page renders with real + Neon-branch data — $2,438.76 MTD, 11 workspaces, KPIs, daily breakdown, historical trend, all 13 workspace budget + cards. Single console error is a static-asset 404 unrelated to this change. Server-action refactor is transparent. + Screenshot saved at specs/030-claude-spend-teams-alerts/verification-dashboard.png. +

+
+ +
+ Result +

Full evaluator flow verified end-to-end

+

2026-05-21 · Task 9

+

+ Hit /api/sync/anthropic-api-costs via curl with the cron Bearer token in four + configurations: +

+ + + + + + + + + + + + + + + +
RunTEAMS_WEBHOOK_URLposted=Confirms
1unset0Kill switch
2set (httpbin echo)4Digest + 3 forecast edges (first run)
3set1Idempotency — forecast cards suppressed
4set1State stable across runs
+

+ SELECT * FROM anthropic_alert_state after run 2 shows three rows with forecast_at_risk=true + on the workspaces the dashboard's "on pace 102%/103%/97%" cards flagged. Threshold timestamps remain NULL because + no workspace is currently over 80%. +

+
+ +
+ Open question +

Cleanup recommendation: production rollout step list

+

2026-05-21 · Task 9

+

+ The plan's rollout step list assumes the operator has a real Workflows webhook URL to test against. For our + verification I used httpbin.org/anything as a wire test. Before production rollout, the operator should: (a) + provision a real Workflows webhook in a Teams channel, (b) replace TEAMS_WEBHOOK_URL in Vercel, (c) + seed a synthetic over-limit workspace in staging to test the threshold path (didn't exist in current data). +

+
+ +

9. Code review pass

+ +
+ Result +

Three parallel agent reviews · 24 findings · 9 applied, 15 deferred/skipped

+

2026-05-21 · /simplify

+

+ Three xhigh-effort review agents ran in parallel (reuse, quality, efficiency). High-value fixes applied: +

+
    +
  • Reuse: Deleted fmtMoneyPrecise (duplicated formatCurrency from src/lib/utils.ts). Switched fmtAgo to wrap date-fns formatDistanceToNow (8+ existing call sites). Deleted unused fmtDate.
  • +
  • Quality: Removed dead ALL_THRESHOLDS export. Extracted projectedEomLabel() from a nested ternary in cards.ts. Trimmed the contract comment in queries.ts from 18 → 4 lines. Replaced linear workspaces.find() with a workspacesByKey Map. Fixed the misleading "at-least-once delivery" comment to honestly describe all-or-nothing batch semantics. Hoisted the dynamic import to static.
  • +
  • Efficiency: Killed an N+1 — forecastWorkspaceMonth is now a pure function; loadCostHistory() in queries.ts fetches all workspaces' daily costs in one SQL query and the evaluator fans out in JS. ~11 queries → 1. State upsert batched into a single INSERT...VALUES...ON CONFLICT instead of N round trips; redundant per-row transaction dropped (caller has withSyncLock).
  • +
+

+ Smoke-tested against the Neon branch after the refactor: clean state → posted=4 (digest + 3 forecast cards) → re-run → posted=1 (digest only, idempotent). Same behavior as pre-refactor, fewer queries. +

+

+ Deferred (out of scope for spec 030): the "__default__" magic string appears in 13 sites across the + codebase — extracting a shared DEFAULT_WORKSPACE_KEY constant is a cross-cutting cleanup, separate + ticket. Loading loadDashboardKpis as one query instead of two is a pre-existing pattern lifted + unchanged — also separate. +

+
+ +

10. Open questions for the spec author

+

(entries added as work progresses)

+ +
+ + diff --git a/specs/030-claude-spend-teams-alerts/mockup.html b/specs/030-claude-spend-teams-alerts/mockup.html new file mode 100644 index 0000000..2f422bf --- /dev/null +++ b/specs/030-claude-spend-teams-alerts/mockup.html @@ -0,0 +1,967 @@ + + + + + +Claude Spend → Microsoft Teams · Option 1 Mockup + + + +
+ + + + +
+ + + + + + + + +
+
+
+ Claude Spend Alerts + Hourly digest, threshold breaches, and forecast risk — posted by Unic Hub +
+
+ Posts + Files + Spend dashboard ⤴ +
+ +
+ +
+
Today · 21 May 2026
+ + +
+
UH
+
+
+ Unic Hub + via Workflows + · 14:02 +
+ +
+
+

+ + Claude API spend · hourly digest +

+
+ May 2026 month-to-date · synced 14:01 CET · data is 1 min old +
+
+ +
+
+
+ MTD spend + $18,420 + ▲ 12% vs same day last month +
+
+ Workspaces > 80% + 3 of 11 + ▲ 2 since 09:00 +
+
+ Forecast + At risk + 2 workspaces projected to overshoot +
+
+
+ +
+
+
+ Top utilization · % of monthly limit + Spend / limit +
+ +
+ research-claude 102% + $5,120 / $5,000 +
+
+ +
+ support-bots 91% + $2,730 / $3,000 +
+
+ +
+ product-ai 84% + $4,200 / $5,000 +
+
+ +
+ engineering-prod 67% + $4,020 / $6,000 +
+
+ +
+ internal-tools 42% + $840 / $2,000 +
+
+
+
+ +
+ + + +
+ +
+
+ Trigger: end of every successful hourly Anthropic sync. One post per channel per hour. Skipped if sync is stale (> 70 min) — a stale-data warning post is sent instead. +
+
+
+ + +
+
UH
+
+
+ Unic Hub + via Workflows + · 14:02 +
+ +
+
+

+ + Workspace over budget · research-claude +

+
+ Crossed 100% of monthly limit at 13:58 CET · first breach this month +
+
+ +
+
+ Workspaceresearch-claude + Monthly limit$5,000.00 + Spend MTD$5,120.40 · 102% + Last 24 h$612.18 · 3.4× the 30-day avg + Projected EOM$8,940 · +$3,940 over (78% overshoot) + Top modelclaude-opus-4-7 · 71% of spend +
+
+ +
+

+ Spend accelerated after a backfill job started at 11:20. The OLS forecast on the last + 14 days now exceeds the ceiling by $3,940. Recommended actions: raise the cap, + pause the workspace, or open the run-rate breakdown. +

+
+ +
+ + + + +
+ +
+
+ Trigger: any workspace crosses 80%, 100%, or 120% of anthropic_workspace_limits.monthly_cap since the previous sync. Idempotency on (workspace_id, threshold, billing_month). +
+
+
+ + +
+
UH
+
+
+ Unic Hub + via Workflows + · 14:03 +
+ +
+
+

+ + Forecast: product-ai projected to overshoot +

+
+ Linear forecast on the last 14 days · 89% confidence · status changed to at_risk +
+
+ +
+ +
+ +
+
+ Workspaceproduct-ai + Spend MTD$4,200 · 84% + 7-day run rate$210/day · ▲ 28% WoW + Projected EOM$5,890 · +$890 over + Crosses 100% on28 May 2026 · in 7 days + Driving modelclaude-sonnet-4-6 · +44% WoW invocations +
+
+ +
+ + + +
+ +
+
+ Trigger: forecastBudget() in src/lib/forecast.ts returns status: at_risk on this sync but was on_track on the previous sync. Edge-triggered, not level-triggered. +
+
+
+ +
+ +
+
+ ✎   Reply to Unic Hub…     📎 😊 🖼 ⋯ +
+
+
+
+ + +
+

How each card is produced

+

+ All three cards are static Adaptive Card v1.5 JSON payloads POSTed to a per-channel Workflows webhook URL. No bot, + no Entra app, no manifest — fire-and-forget HTTP from the existing hourly cron. Each post is a new message + (Workflows webhooks cannot edit in place). +

+ +
+
+

1. Hourly digest always

+

+ Posted once per successful sync. Pulls getDashboardKpis() + the top 5 entries from + getWorkspaceList() sorted by utilizationPct. Skipped if + getSyncStatus().isStale is true; a stale-data warning posts instead. +

+
+
+

2. Threshold breach edge-triggered

+

+ Fired once per workspace per threshold (80, 100, 120%) per billing month. Idempotency stored in a new + anthropic_alert_state table to survive cron restarts and re-runs. +

+
+
+

3. Forecast at-risk edge-triggered

+

+ Fired when forecastBudget() flips from on_trackat_risk, and + again when it flips back. Single source-of-truth: the same forecast already shown in the in-app dashboard. +

+
+
+ +
+ On track (< 80%) + Approaching limit (80–99%) + Over budget (≥ 100%) + Channel: Unic · FinOps for AI > Claude Spend Alerts + Webhook: https://prod-XX.westeurope.logic.azure.com/workflows/… +
+
+ +
+ + diff --git a/specs/030-claude-spend-teams-alerts/plan.html b/specs/030-claude-spend-teams-alerts/plan.html new file mode 100644 index 0000000..fb148bb --- /dev/null +++ b/specs/030-claude-spend-teams-alerts/plan.html @@ -0,0 +1,1260 @@ + + + + + +Plan · Claude Spend → Microsoft Teams (Option 1) + + + + +
+ + + + + +
+ +
+
Spec 030 · Claude Spend → Microsoft Teams
+

Implementation Plan — Option 1

+

+ Post Adaptive Cards into a Microsoft Teams channel from the existing hourly Anthropic sync via an + incoming Workflows webhook. Three card types: hourly digest, threshold-breach alert, forecast-at-risk + alert. No bot, no Teams app manifest, no Entra registration. +

+
+
Feature
030
+
Status
Plan · rev 2
+
Effort
~1.5 days
+
Risk
Low
+
+ +
+ Revisions in this pass + Self-review found three structural issues that would have hit during implementation. The plan now reflects the fixes — + sections marked (rev 2) below contain the updates. +
    +
  • Auth mismatch. Cron has no NextAuth session — every existing server action would return empty data. Solved by extracting an auth-free data layer at src/lib/anthropic/queries.ts.
  • +
  • Forecast & data sourcing. The existing forecastBudget() is for annual budgets, not workspace-monthly caps. Several card fields had no source. New forecastWorkspaceMonth() + "Top model" deferred to Phase 1.5.
  • +
  • Threshold model. Overlapping [80,100)/[100,120)/[≥120) ranges with an active boolean produced confusing semantics. Replaced with one row per workspace per month + three nullable "first-fired-at" timestamps. Each threshold fires exactly once per workspace per billing month.
  • +
+
+
+ + +

Scope

+ +

In scope

+
    +
  • One outbound POST to a Teams Workflows webhook URL per relevant event, fired at the end of the existing hourly Anthropic cost sync (/api/sync/anthropic-api-costs).
  • +
  • Three Adaptive Card v1.4 templates: hourly digest, threshold-breach (80% / 100% / 120%), forecast at-risk (state transition on_track → at_risk or back).
  • +
  • New table anthropic_alert_state for idempotency — alerts are edge-triggered, not level-triggered.
  • +
  • Stale-data guard: if the sync is stale, post a single stale-data warning instead of the digest.
  • +
  • Env-driven enable/disable. No UI changes in v1.
  • +
  • Tests: unit for the renderer, integration for the evaluator + state machine, manual test for an end-to-end webhook POST against a real channel.
  • +
+ +

Out of scope (deferred)

+
    +
  • Bot Framework / Universal Action refresh / auto-refreshing cards.
  • +
  • Per-user Activity Feed pings.
  • +
  • Teams personal tab embedding the dashboard.
  • +
  • Settings UI to toggle Teams posting, mute card types, or test a webhook (Phase 1.5).
  • +
  • Cards beyond the three above — see specs/030-claude-spend-teams-alerts/mockup.html for the visual contract and the "explore additional information" thread for backlog items.
  • +
  • Cross-product cards (Copilot, invoices, licenses) — deferred to a later spec.
  • +
+ +
+ Freshness ceiling + The sync runs hourly. "Real-time" here means "seconds after the hourly cron lands." Anthropic does not expose + webhooks for billing/usage events, so polling is the only architecture available. +
+ + +

Architecture

+ +

The integration is an additive post-step on the existing sync. No new cron, no new route, no new auth.

+ +
┌──────────────────────────────────────────────────────────────────────────────────┐ +│ GET /api/sync/anthropic-api-costs (Vercel Cron, hourly) │ +│ └─ makeCronSyncRoute(run, "Anthropic API costs") [existing] │ +│ └─ requireCronSecret(req) [existing] │ +│ └─ run() [existing, +1 step] │ +│ ├─ withSyncLock(...) → fetch Anthropic → upsert anthropic_workspace_costs │ +│ ├─ on success → stamp anthropic_sync_status [existing] │ +│ └─ on success → evaluateAndPostTeamsAlerts() [NEW, try/catch] │ +│ ├─ if !env.TEAMS_WEBHOOK_URL → return [no-op] │ +│ ├─ loadSyncStatus() [NEW · queries.ts] │ +│ ├─ loadDashboardKpis(month) [NEW · queries.ts] │ +│ ├─ loadWorkspaceList() [NEW · queries.ts] │ +│ ├─ forecastWorkspaceMonth(ws, month) [NEW · per workspace] │ +│ ├─ diff against anthropic_alert_state [NEW table] │ +│ ├─ build card payload(s): │ +│ │ • hourly digest (always, unless stale) │ +│ │ • threshold breach (per workspace × threshold, 1×/month) │ +│ │ • forecast at-risk (per workspace, on edge transition) │ +│ │ • stale-data warning (if isStale) │ +│ └─ for each payload: postCard(env.TEAMS_WEBHOOK_URL, payload) │ +│ └─ retryWithBackoff() — handle 429 / 5xx │ +└──────────────────────────────────────────────────────────────────────────────────┘ + │ + ▼ + https://prod-XX..logic.azure.com/... + (Workflows incoming webhook) + │ + ▼ + Microsoft Teams channel: Claude Spend Alerts + +──── Data layer (rev 2) ────────────────────────────────────────────────────────── + src/lib/anthropic/queries.ts ← auth-free pure DB queries (NEW) + │ + ├──→ called directly by the evaluator (no session, no admin gate) + └──→ wrapped by src/actions/anthropic-global.ts for admin UI + (requireAdmin + unstable_cache stay there, but no DB code below them)
+ +

Design choices

+
    +
  • Piggyback the sync, don't add a cron. Same freshness, one less moving part, no new auth.
  • +
  • Alert evaluation is non-blocking. Wrapped in try/catch; a failure logs but does not flip the sync to partial/failed. The sync's job is data integrity; alerts are a side effect.
  • +
  • Edge-triggered alerts. A workspace stuck at 110% does not spam the channel every hour — it posts once when it first crosses, and again only if it drops < 80% and rises again, or crosses a higher threshold.
  • +
  • Workflows webhook only — no bot, no Entra app. Confirmed: Action.Execute, Action.Submit, and refresh all require a bot. We use Action.OpenUrl exclusively.
  • +
+ + +

Data model

+ +

One new table. No new enums (the original tier enum was dropped — see rev 2 below). No changes to existing tables.

+ +

New table: anthropic_alert_state rev 2

+

+ One row per (workspace_id, billing_month) — the idempotency ledger. Each threshold has a nullable + *_fired_at timestamp: NULL means "never fired this month", non-NULL means "already fired, don't + fire again". Forecast tracking is stored as a boolean + timestamp pair on the same row (it's edge-triggered; + thresholds are not). +

+ +
src/lib/db/schema.ts (edit)// No new enum — the previous threshold enum is replaced by three nullable timestamp columns.
+
+export const anthropicAlertState = pgTable("anthropic_alert_state", {
+  id:                   serial("id").primaryKey(),
+
+  // workspaceId is varchar(64) NOT NULL. For the special "default" workspace
+  // (where Anthropic returns workspace_id = null), we coalesce to "__default__"
+  // before insert — see queries.ts. This sidesteps Postgres's NULL-is-not-equal-NULL
+  // gotcha on the unique index.
+  workspaceId:          varchar("workspace_id", { length: 64 }).notNull(),
+  billingMonth:         varchar("billing_month", { length: 7 }).notNull(),  // YYYY-MM
+
+  // Threshold alerts: fire-once-per-month, never re-fire.
+  threshold80FiredAt:   timestamp("threshold_80_fired_at"),
+  threshold100FiredAt:  timestamp("threshold_100_fired_at"),
+  threshold120FiredAt:  timestamp("threshold_120_fired_at"),
+
+  // Forecast: edge-triggered. Fires when forecastAtRisk transitions false → true.
+  forecastAtRisk:       boolean("forecast_at_risk").notNull().default(false),
+  forecastChangedAt:    timestamp("forecast_changed_at"),
+
+  createdAt:            timestamp("created_at").notNull().defaultNow(),
+  updatedAt:            timestamp("updated_at").notNull().defaultNow(),
+}, (t) => [
+  uniqueIndex("alert_state_workspace_month_idx").on(t.workspaceId, t.billingMonth),
+]);
+ + + + + + + +
ColumnPurpose
threshold_80_fired_at / _100_ / _120_NULL until that threshold first crosses this month. Once set, never re-fires for the same (workspace, month).
forecast_at_riskCurrent state of the forecast. Used to detect false → true edges (and optionally back).
forecast_changed_atTimestamp of the last state flip. Lets the card show "status changed N minutes ago".
composite unique(workspace_id, billing_month) — exactly one row per workspace per month.
+ +
+ Why fire-once-per-month for thresholds + A workspace stuck at 110% does not need a fresh card every hour, every day, or every time it dips to 79% and pops + back. The breach event is "crossed for the first time this month" — once an operator has seen it, more cards add + noise, not signal. Forecast cards remain edge-triggered because forecast flips are themselves rare and meaningful. +
+ +

Migration command

+
pnpm db:generate   # produces .migrations/XXXX_*.sql
+pnpm db:migrate    # applies to DATABASE_URL
+ +
+ Migration review + Run the drizzle-migration-reviewer agent on the generated SQL before applying to production — + this is a brand-new table with no FK references, so risk is minimal, but the policy applies. +
+ + +

Module layout

+ +

+ Two new namespaces — src/lib/anthropic/ for the auth-free data layer + (used by both the existing server actions and the new evaluator) and src/lib/teams/ for the + Teams-specific code — plus one schema edit and one source-handler edit. + rev 2 +

+ +
src/
+├── actions/
+│   └── anthropic-global.ts                              refactor: actions delegate to queries.ts (no behavior change for UI)
+├── lib/
+│   ├── db/
+│   │   └── schema.ts                                    + anthropicAlertState (rev 2 shape)
+│   ├── env.ts                                           + TEAMS_WEBHOOK_URL, TEAMS_DASHBOARD_BASE_URL
+│   ├── sync/
+│   │   └── sources/
+│   │       └── anthropic-workspace.ts                   + call evaluateAndPostTeamsAlerts() on success
+│   ├── anthropic/                                       NEW namespace — auth-free data layer
+│   │   ├── queries.ts                                   loadSyncStatus(), loadDashboardKpis(month), loadWorkspaceList()
+│   │   └── forecast-workspace.ts                        forecastWorkspaceMonth(ws, month, today) — trailing-rate, not OLS
+│   └── teams/
+│       ├── webhook.ts                                   postCard() — fetch wrapper w/ retry
+│       ├── cards.ts                                     renderDigestCard(), renderBreachCard(), renderForecastCard(), renderStaleCard()
+│       ├── evaluator.ts                                 evaluateAndPostTeamsAlerts() — pure orchestration
+│       ├── state.ts                                     readAlertState(month), upsertAlertState(diff)
+│       ├── format.ts                                    tiny helpers: $, %, ago()
+│       └── types.ts                                     card-input types, AlertEvaluation, CardEnvelope
+
+tests/
+├── unit/
+│   └── teams/
+│       ├── cards.test.ts                                snapshot tests for each card variant
+│       └── format.test.ts                               $, %, ago()
+└── integration/
+    ├── anthropic/
+    │   └── forecast-workspace.test.ts                   trailing-rate math against seeded daily costs
+    └── teams/
+        ├── evaluator.test.ts                            fire-once-per-month invariants + forecast edges
+        └── webhook.test.ts                              postCard against a mocked fetch
+ +

Server-action refactor (no UI behavior change)

+

+ The existing getSyncStatus(), getDashboardKpis(), getWorkspaceList() + keep their signatures and their requireAdmin() + unstable_cache() wrappers. Their + bodies shrink to a single call into src/lib/anthropic/queries.ts. The DB queries + themselves move into the queries module. Both surfaces (UI server actions and the cron-time evaluator) read from + the same source — actions enforce the admin gate, the evaluator skips it because it runs under + CRON_SECRET. +

+ +

Security hardening for the auth-free data layer

+

+ Hoisting org-financial queries above the auth boundary creates a footgun: a future route handler that imports a + load* function and forgets to gate would publicly expose spend KPIs. The mitigations below make + misuse hard to commit and easy to catch in review. +

+
    +
  • import "server-only" at the top of src/lib/anthropic/queries.ts. Next.js throws a build error if any client-side code tries to import the module, preventing accidental browser bundling.
  • +
  • Top-of-file contract comment naming the two and only two allowed callers (server actions, cron-time evaluator) and stating "callers must enforce authorization themselves."
  • +
  • Naming convention: queries are load*() (not get*()) to flag "auth-free, caller's responsibility" distinct from action-style getters.
  • +
  • Mandatory review by the nextauth-security-reviewer sub-agent before merge — explicitly added to the rollout step list.
  • +
  • No middleware import — the queries module must not be imported from middleware.ts or any edge runtime path.
  • +
+

+ Residual risk after mitigations: a hand-written new route that explicitly imports a load function and skips auth. + That requires an intentional act and is the kind of regression code review catches. Net assessment: small + incremental risk vs. the original "auth at the boundary" pattern, materially lower than the cost of leaving the + cron caller broken. +

+ +
+ CRON_SECRET blast radius + A leaked CRON_SECRET previously gave an attacker the ability to trigger syncs. After this change it + also gives them the ability to fire Teams posts to whatever channel TEAMS_WEBHOOK_URL points at. No + data exfil (the attacker would need both secrets to read responses), low real value, but worth noting. +
+ +

Why a workspace-monthly forecast module separate from forecastBudget()

+

+ src/lib/forecast.ts's forecastBudget() is designed for the annual budget tracker + (input: MonthlySpend[] over many months; output: annual projection via OLS). The Teams use case + needs monthly projection from daily data over a partial month. Different domain. + forecastWorkspaceMonth() uses a 7-day trailing rate scaled to days-remaining-in-month — well-suited + for a 30-day cycle and produces the "Crosses 100% on YYYY-MM-DD" date the forecast card needs. +

+ + +

Teams webhook client

+ +

+ A thin wrapper around fetch that POSTs an Adaptive Card envelope, honors 429 Retry-After, + and retries on 412/502/504 per Microsoft's guidance. Reuses retryWithBackoff() from + src/lib/sync/framework.ts. +

+ +
src/lib/teams/webhook.ts (new)import { env } from "@/lib/env";
+import { retryWithBackoff } from "@/lib/sync/framework";
+import type { CardEnvelope } from "./types";
+
+const RETRIABLE = new Set([412, 429, 502, 504]);
+
+export async function postCard(webhookUrl: string, envelope: CardEnvelope): Promise<void> {
+  await retryWithBackoff(async () => {
+    const res = await fetch(webhookUrl, {
+      method: "POST",
+      headers: { "content-type": "application/json" },
+      body: JSON.stringify(envelope),
+    });
+    if (res.ok) return;
+
+    if (RETRIABLE.has(res.status)) {
+      const retryAfter = Number(res.headers.get("retry-after") ?? 0);
+      throw new RetriableError(`Teams webhook ${res.status}`, retryAfter * 1000);
+    }
+    const body = await res.text();
+    throw new Error(`Teams webhook ${res.status}: ${body.slice(0, 500)}`);
+  }, { maxAttempts: 3, baseDelayMs: 2000, maxDelayMs: 20000, jitterPct: 0.2 });
+}
+ +
+ Limits we're designing under + Per-webhook throttle is 4 req/sec, per-channel cap is 1800 messages/hour, + max payload 28 KB. Hourly cadence with ≤ 5 cards per run sits at < 0.3% of the per-hour cap. +
+ + +

Card renderer

+ +

+ Pure functions: (input) => CardEnvelope. No DB access, no side effects, no clock reads — the caller + passes in now. This makes snapshot tests trivial and makes the cards reproducible. +

+ +

Renderer module shape

+
src/lib/teams/cards.ts (new)export function renderDigestCard(input: DigestInput): CardEnvelope;
+export function renderBreachCard(input: BreachInput): CardEnvelope;
+export function renderForecastCard(input: ForecastInput): CardEnvelope;
+export function renderStaleCard(input: StaleInput): CardEnvelope;
+ +

Input types

+
src/lib/teams/types.ts (new)export type DigestInput = {
+  kpis: DashboardKpis;             // from getDashboardKpis()
+  topWorkspaces: WorkspaceListItem[]; // top 5 by utilization, from getWorkspaceList()
+  sync: SyncStatus;                // from getSyncStatus()
+  month: string;                   // "2026-05"
+  dashboardUrl: string;
+};
+
+export type BreachInput = {
+  workspace: WorkspaceListItem;
+  threshold: "threshold_80" | "threshold_100" | "threshold_120";
+  projectedMonthEndCents: number;
+  topModel: { name: string; sharePct: number } | null;
+  workspaceUrl: string;
+  raiseLimitUrl: string;
+};
+
+export type ForecastInput = {
+  workspace: WorkspaceListItem;
+  forecast: BudgetForecast;        // from forecastBudget()
+  crossesCapOn: Date | null;
+  runRate7dCents: number;
+  runRateWoWPct: number;
+  workspaceUrl: string;
+};
+
+export type CardEnvelope = {
+  type: "message";
+  attachments: [{
+    contentType: "application/vnd.microsoft.card.adaptive";
+    contentUrl: null;
+    content: AdaptiveCard;
+  }];
+};
+ +

Visual contract

+

+ Cards must match the mockup at specs/030-claude-spend-teams-alerts/mockup.html. Notable rendering + constraints from the Teams contract investigation: +

+
    +
  • Use Adaptive Card version: "1.4" for mobile rendering compatibility (1.5 is desktop-only).
  • +
  • Only Action.OpenUrl is supported via Workflows webhook. No Submit/Execute, no refresh.
  • +
  • SVG and animated GIF are not supported by Adaptive Card Image. Render utilization bars as nested ColumnSet with weighted widths and tinted Container.style (default / good / warning / attention).
  • +
  • Payload ceiling is 28 KB — well above the ~3-5 KB our cards land at.
  • +
  • Action buttons in the mockup that imply server-side actions (Pause workspace, Raise limit, Snooze) become Action.OpenUrl deep-links into the in-app dashboard. The button label stays the same; the click flow is "open the page where you can do it".
  • +
+ +
+ Don't leak secrets + The webhook URL is the secret. The HMAC sig= in the query string authenticates anyone holding it. + Never log the URL, never echo it back in error messages, never include it in sync_events.errorMessage. +
+ + +

Alert evaluator

+ +

+ The orchestration layer. Pulls data via the auth-free queries module, diffs against the alert-state ledger, + emits zero or more cards, persists the new state. + rev 2 +

+ +
src/lib/teams/evaluator.ts (new)import { loadSyncStatus, loadDashboardKpis, loadWorkspaceList } from "@/lib/anthropic/queries";
+import { forecastWorkspaceMonth } from "@/lib/anthropic/forecast-workspace";
+import { readAlertState, upsertAlertState } from "./state";
+import { postCard } from "./webhook";
+import { env } from "@/lib/env";
+
+export async function evaluateAndPostTeamsAlerts(opts?: {
+  now?: Date;
+}): Promise<{ posted: number; skipped: string[] }> {
+  if (!env.TEAMS_WEBHOOK_URL) return { posted: 0, skipped: ["webhook_disabled"] };
+
+  const now = opts?.now ?? new Date();
+  const month = getCurrentMonth(now);
+  const sync = await loadSyncStatus();
+
+  // Stale guard — short-circuit before doing any other work.
+  if (sync.isStale) {
+    await postCard(env.TEAMS_WEBHOOK_URL, renderStaleCard({ sync, month }));
+    return { posted: 1, skipped: ["digest_skipped_stale"] };
+  }
+
+  const [kpis, workspaces, state] = await Promise.all([
+    loadDashboardKpis(month),
+    loadWorkspaceList(),
+    readAlertState(month),
+  ]);
+
+  // Per-workspace forecasts run in parallel; the call is cheap (single SQL aggregation).
+  const forecasts = await Promise.all(
+    workspaces.filter(w => w.workspaceId !== null && w.limitCents !== null).map(w =>
+      forecastWorkspaceMonth(w.workspaceId!, month, now).then(f => ({ workspace: w, forecast: f }))
+    ),
+  );
+
+  const diff = computeAlertDiff({ workspaces, forecasts, state, now });
+  const envelopes: CardEnvelope[] = [];
+
+  // 1) Hourly digest — always (unless stale).
+  envelopes.push(renderDigestCard({ kpis, topWorkspaces: top5(workspaces), sync, month, dashboardUrl: dashUrl() }));
+
+  // 2) Threshold breaches — only thresholds with no firedAt timestamp yet this month.
+  for (const b of diff.thresholdsToFire) {
+    envelopes.push(renderBreachCard(toBreachInput(b)));
+  }
+
+  // 3) Forecast edges — false → true (and optionally true → false).
+  for (const f of diff.forecastEdges) {
+    envelopes.push(renderForecastCard(toForecastInput(f)));
+  }
+
+  // Post serially to stay under 4 req/sec.
+  for (const envelope of envelopes) {
+    await postCard(env.TEAMS_WEBHOOK_URL, envelope);
+  }
+
+  // Persist new state only after all cards have posted successfully.
+  await upsertAlertState(diff, now);
+  return { posted: envelopes.length, skipped: [] };
+}
+ +

State rules (rev 2)

+

For each (workspaceId, billingMonth) row, the evaluator decides per-column:

+ + + + + + + + +
ColumnConditionActionCard?
threshold_80_fired_atNULL AND pct ≥ 80set to nowyes
threshold_80_fired_atnon-NULL (any pct)no-op
threshold_100_fired_atNULL AND pct ≥ 100set to nowyes
threshold_120_fired_atNULL AND pct ≥ 120set to nowyes
forecast_at_riskwas false, now trueflip + stamp forecast_changed_atyes
forecast_at_riskwas true, now falseflip + stamp forecast_changed_atsee Q1
+ +

Threshold semantics

+
    +
  • Each threshold fires exactly once per (workspace, billing month). No fall-then-rise re-fires.
  • +
  • A workspace going 0% → 105% in one hour fires both threshold_80 and threshold_100 in the same evaluation — two cards.
  • +
  • A workspace at 110% for 720 hours produces zero new cards after the initial breach.
  • +
  • New billing month = new row = thresholds re-armed.
  • +
  • Workspaces with limitCents === null are skipped for thresholds. Forecast still runs (no cap = no overshoot, but the run-rate / projection is still computed).
  • +
+ + +

Cron integration

+ +

+ The only change to the existing cron path is a single try-wrapped call at the end of run(), after the + sync-status sentinel is stamped. +

+ +
export async function run(triggeredBy?: number, opts?: RunOpts): Promise<{ eventId: number }> { + const result = await withSyncLock( + { sourceType: "anthropic_api_costs", triggeredBy, operationType: opts?.operationType }, + async (eventId) => { /* ...existing... */ return counts; } + ); + if (counts.errorCount === 0) { + await db.insert(anthropicSyncStatus).values({ /* sentinel */ }).onConflictDoUpdate(...); ++ try { ++ const { posted, skipped } = await evaluateAndPostTeamsAlerts(); ++ console.log(`[teams] posted=${posted} skipped=${skipped.join(",") || "-"}`); ++ } catch (err) { ++ console.error("[teams] evaluation failed (non-fatal):", err); ++ } + } + return result; + }
+ +
    +
  • Runs only when counts.errorCount === 0 — partial-failure syncs don't post (data may be incomplete).
  • +
  • Wrapped in try/catch — Teams posting can never fail the sync.
  • +
  • Logs to console per house convention. No new logging infrastructure.
  • +
  • No change to makeCronSyncRoute, withSyncLock, or sync_events.
  • +
+ +

Manual trigger

+

+ A dev or admin can re-fire the evaluator without re-running the upstream sync by calling + evaluateAndPostTeamsAlerts() from a one-off script (e.g., scripts/teams-test.ts). This is + not exposed as an API route in v1. +

+ + +

Configuration

+ +

New env vars

+ + + + + + + + + + + + + + +
NameTypeRequiredPurpose
TEAMS_WEBHOOK_URLURLNoIf unset, the evaluator no-ops. This is the kill switch.
TEAMS_DASHBOARD_BASE_URLURLNo (defaults to NEXTAUTH_URL)Base URL used to build deep links in card buttons.
+ +

Zod additions in src/lib/env.ts

+
src/lib/env.ts (edit)const envSchema = z.object({
+  /* ...existing... */
+  TEAMS_WEBHOOK_URL: z.string().url().optional(),
+  TEAMS_DASHBOARD_BASE_URL: z.string().url().optional(),
+});
+ +
+ Vercel env + Add TEAMS_WEBHOOK_URL in Vercel Project Settings → Environment Variables, scoped to Production only + at first. vercel env pull on local will pick it up. Treat the URL as a secret — it's an HMAC-signed + Logic Apps trigger and is auth by possession. +
+ + +

Card payloads

+ +

+ Three Adaptive Card v1.4 payloads, wrapped in the Workflows envelope. These are the contract — the renderer must + produce JSON that matches this shape. +

+ +

(a) Hourly digest

+
+ POST $TEAMS_WEBHOOK_URL — digest payload +
{
+  "type": "message",
+  "attachments": [
+    {
+      "contentType": "application/vnd.microsoft.card.adaptive",
+      "contentUrl": null,
+      "content": {
+        "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
+        "type": "AdaptiveCard",
+        "version": "1.4",
+        "body": [
+          { "type": "TextBlock", "text": "Claude API spend · hourly digest", "weight": "Bolder", "size": "Large", "wrap": true },
+          { "type": "TextBlock", "text": "May 2026 MTD · synced 14:01 CET · 1 min old", "isSubtle": true, "spacing": "None", "wrap": true },
+          { "type": "ColumnSet", "spacing": "Medium", "columns": [
+            { "type": "Column", "width": "stretch", "items": [
+              { "type": "TextBlock", "text": "MTD spend", "isSubtle": true, "size": "Small" },
+              { "type": "TextBlock", "text": "$18,420", "weight": "Bolder", "size": "ExtraLarge", "spacing": "None" },
+              { "type": "TextBlock", "text": "▲ 12% vs same day last month", "color": "Attention", "size": "Small", "spacing": "None" }
+            ]},
+            { "type": "Column", "width": "stretch", "items": [
+              { "type": "TextBlock", "text": "Workspaces > 80%", "isSubtle": true, "size": "Small" },
+              { "type": "TextBlock", "text": "3 of 11", "weight": "Bolder", "size": "ExtraLarge", "spacing": "None" }
+            ]},
+            { "type": "Column", "width": "stretch", "items": [
+              { "type": "TextBlock", "text": "Forecast", "isSubtle": true, "size": "Small" },
+              { "type": "TextBlock", "text": "At risk", "weight": "Bolder", "size": "ExtraLarge", "color": "Attention", "spacing": "None" }
+            ]}
+          ]},
+          { "type": "TextBlock", "text": "Top utilization", "weight": "Bolder", "spacing": "Medium" },
+
+          /* repeat per workspace: name+pct, then a two-column "bar" */
+          { "type": "TextBlock", "text": "research-claude · 102% · $5,120 / $5,000", "spacing": "Small", "wrap": true },
+          { "type": "ColumnSet", "spacing": "None", "columns": [
+            { "type": "Column", "width": 100, "items": [{ "type": "Container", "style": "attention", "minHeight": "6px", "items": [{ "type": "TextBlock", "text": " " }]}]}
+          ]}
+          /* ...repeat for the remaining 4 workspaces... */
+        ],
+        "actions": [
+          { "type": "Action.OpenUrl", "title": "Open dashboard", "url": "https://hub.unic.com/anthropic" },
+          { "type": "Action.OpenUrl", "title": "View all workspaces", "url": "https://hub.unic.com/anthropic/workspaces" }
+        ]
+      }
+    }
+  ]
+}
+
+ +

(b) Threshold breach

+
+ POST $TEAMS_WEBHOOK_URL — breach payload (truncated for brevity) +
{
+  "type": "message",
+  "attachments": [{
+    "contentType": "application/vnd.microsoft.card.adaptive",
+    "contentUrl": null,
+    "content": {
+      "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
+      "type": "AdaptiveCard",
+      "version": "1.4",
+      "body": [
+        { "type": "Container", "style": "attention", "bleed": true, "items": [
+          { "type": "TextBlock", "text": "⚠ Workspace over budget · research-claude", "weight": "Bolder", "size": "Large", "color": "Attention", "wrap": true },
+          { "type": "TextBlock", "text": "Crossed 100% at 13:58 CET · first breach this month", "isSubtle": true, "spacing": "None", "wrap": true }
+        ]},
+        { "type": "FactSet", "facts": [
+          { "title": "Workspace", "value": "research-claude" },
+          { "title": "Monthly limit", "value": "$5,000.00" },
+          { "title": "Spend MTD", "value": "$5,120.40 · 102%" },
+          { "title": "7-day run rate", "value": "$612/day · 3.4× the 30-day avg" },
+          { "title": "Projected EOM", "value": "$8,940 · +$3,940 over" }
+          /* "Top model" intentionally omitted in v1 — no per-workspace × model join
+             available. Deferred to Phase 1.5 once we wire anthropic_usage_metrics
+             into a workspace-attributed aggregation. */
+        ]}
+      ],
+      "actions": [
+        { "type": "Action.OpenUrl", "title": "Open workspace", "url": "https://hub.unic.com/anthropic/workspaces/research-claude" },
+        { "type": "Action.OpenUrl", "title": "Adjust limit", "url": "https://hub.unic.com/anthropic/workspaces/research-claude/limit" }
+      ]
+    }
+  }]
+}
+
+ +

(c) Forecast at-risk

+
+ POST $TEAMS_WEBHOOK_URL — forecast payload (truncated) +
{
+  "type": "message",
+  "attachments": [{
+    "contentType": "application/vnd.microsoft.card.adaptive",
+    "contentUrl": null,
+    "content": {
+      "$schema": "http://adaptivecards.io/schemas/adaptive-card.json",
+      "type": "AdaptiveCard",
+      "version": "1.4",
+      "body": [
+        { "type": "Container", "style": "warning", "bleed": true, "items": [
+          { "type": "TextBlock", "text": "Forecast: product-ai projected to overshoot", "weight": "Bolder", "size": "Medium", "color": "Warning", "wrap": true },
+          { "type": "TextBlock", "text": "OLS on last 14 days · status flipped to at_risk", "isSubtle": true, "spacing": "None" }
+        ]},
+        { "type": "FactSet", "facts": [
+          { "title": "Spend MTD", "value": "$4,200 · 84%" },
+          { "title": "7-day run rate", "value": "$210/day · ▲ 28% WoW" },
+          { "title": "Projected EOM", "value": "$5,890 · +$890 over" },
+          { "title": "Crosses 100% on", "value": "28 May 2026 · in 7 days" }
+        ]}
+      ],
+      "actions": [
+        { "type": "Action.OpenUrl", "title": "Open forecast", "url": "https://hub.unic.com/anthropic/workspaces/product-ai/forecast" }
+      ]
+    }
+  }]
+}
+
+ + +

Failure modes & edge cases

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ScenarioBehavior
Webhook returns 429retryWithBackoff honors Retry-After, up to 3 attempts, max 20s delay.
Webhook returns 4xx (non-429)No retry. Log error (without URL). Sync still marked success — alerts are best-effort.
Workflow URL revoked / O365 connector retiredAll POSTs fail. Operator removes TEAMS_WEBHOOK_URL until a new Workflows URL is provisioned.
Sync stale (> 70 min)Digest skipped. Stale-data card posted instead. Breach/forecast cards skipped entirely.
Anthropic workspace removed upstreamWorkspace drops out of getWorkspaceList(). Its alert-state row goes dormant (active=false next eval).
New billing monthEval queries WHERE billing_month = '2026-06'. No rows exist; everything is treated as fresh. May → June rollover emits a fresh set of breach cards if conditions persist.
Limit increased mid-month (utilization drops below threshold)Row flips active=false. Next time utilization crosses again, a new card fires. No spam.
Limit removed entirelyWorkspace has no limitCents. Excluded from threshold evaluation. Forecast still runs if monthly history is sufficient.
Card > 28 KBRenderer caps the digest at top-5 workspaces; theoretical max is well under 6 KB. If somehow exceeded, the POST fails with 413 and the operator sees the error in cron logs.
Concurrent sync runswithSyncLock prevents concurrency. Evaluator runs only after the lock releases.
Partial sync (errorCount > 0)Evaluator skipped. Sync data may be incomplete; better silence than misleading alerts.
+ + +

Test plan

+ +

Unit Vitest

+
    +
  • tests/unit/teams/cards.test.ts — one snapshot per card variant. Catches accidental schema breakage.
  • +
  • tests/unit/teams/format.test.ts — money/percent/relative-time helpers.
  • +
  • Validate the snapshot JSON against an Adaptive Card schema validator (one-time check; not in CI loop).
  • +
+ +

Integration Vitest + real Neon branch

+
    +
  • tests/integration/teams/evaluator.test.ts rev 2: +
      +
    • Empty state, no workspaces over threshold → exactly 1 envelope (digest).
    • +
    • One workspace newly at 85% → digest + 1 breach card; threshold_80_fired_at is set.
    • +
    • Same workspace next hour, still 85% → digest only, no re-fire.
    • +
    • Same workspace, now 110% → digest + 1 new threshold_100 card; threshold_100_fired_at set.
    • +
    • Drops to 60% → digest only; no recovery card; timestamps remain set.
    • +
    • Back up to 85% → digest only; threshold_80_fired_at already non-NULL, so no re-fire.
    • +
    • Month rollover → new row inserted with all timestamps NULL; same 85% breach emits a fresh card.
    • +
    • Forecast flips on_track → at_risk → forecast card posted; forecast_at_risk = true, forecast_changed_at stamped.
    • +
    • Forecast flips back at_risk → on_track → optional recovery card per Q1 default (no card).
    • +
    • Stale sync → only stale card posted; thresholds and forecasts not evaluated.
    • +
    • Workspace with limitCents = null → thresholds skipped, forecast still computed.
    • +
    • Default workspace (workspaceId = null) → coalesced to "__default__" in the ledger, unique index satisfied.
    • +
    +
  • +
  • tests/integration/anthropic/forecast-workspace.test.ts new — seed 14 days of anthropic_workspace_costs, assert: 7-day run rate, week-over-week %, projected EOM cents, crosses-cap date (or NULL when on-track).
  • +
  • tests/integration/teams/webhook.test.ts — mock fetch to assert: envelope shape, retry on 429 with Retry-After, no retry on 400, never logs the URL.
  • +
+ +

Manual

+
    +
  1. Provision a real Workflows webhook in a staging channel.
  2. +
  3. Seed a workspace with a synthetic 110% utilization in staging DB.
  4. +
  5. Run the script pnpm tsx scripts/teams-test.ts → digest + breach card appear in the channel within seconds.
  6. +
  7. Re-run the script → only the digest re-appears (idempotency proof).
  8. +
  9. Trigger the cron via curl -H "Authorization: Bearer $CRON_SECRET" .../api/sync/anthropic-api-costs.
  10. +
+ + +

Rollout

+ +
    +
  1. + Spec freeze — review this plan with the AI-FinOps stakeholder. Confirm channel + audience. +
  2. +
  3. + Branch & Neon branch — create feature branch, spin a Neon worktree branch for schema work. +
  4. +
  5. + Schema migration — add anthropic_alert_type enum + anthropic_alert_state table. Generate, review with drizzle-migration-reviewer, apply. +
  6. +
  7. + Extract data layer — move DB queries from src/actions/anthropic-global.ts into new src/lib/anthropic/queries.ts. Server actions stay as thin admin-gated + cached wrappers. UI behavior unchanged; verify by running the existing dashboard against staging. +
  8. +
  9. + Add forecastWorkspaceMonth() in src/lib/anthropic/forecast-workspace.ts with an integration test. +
  10. +
  11. + Implement Teams modules in order: types.tsformat.tscards.tswebhook.tsstate.tsevaluator.ts. Each lands with unit tests. +
  12. +
  13. + Wire into sync — edit src/lib/sync/sources/anthropic-workspace.ts with the try-wrapped call. +
  14. +
  15. + Integration tests — run against the Neon branch; assert state-machine behavior. +
  16. +
  17. + Staging webhook — provision in a private staging Teams channel. Push branch to a Vercel preview. Set TEAMS_WEBHOOK_URL on the preview only. +
  18. +
  19. + Smoke test — seed a synthetic over-limit workspace, trigger the cron, observe the channel. +
  20. +
  21. + Security review — run the nextauth-security-reviewer sub-agent against the diff. Focus on src/lib/anthropic/queries.ts (server-only marker, no client imports), the cron handler, and any newly-touched session-handling code. +
  22. +
  23. + Code review — merge to main. +
  24. +
  25. + Production webhook — channel owner provisions a Workflows webhook in the production channel. Add TEAMS_WEBHOOK_URL to Vercel Production. +
  26. +
  27. + Watch for 24h — confirm one digest per hour, no duplicate breach cards on cron re-runs, no errors in cron logs. +
  28. +
  29. + Close spec — link the merged PRs from specs/030-claude-spend-teams-alerts/README.html (to be added later). +
  30. +
+ +

Backout

+

+ Remove or unset TEAMS_WEBHOOK_URL in Vercel. No code rollback needed — the evaluator early-returns when the var is missing. + Schema migration is additive (a new table) and safe to keep even when the feature is off. +

+ + +

Open questions

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
#QuestionDefault if no answer
Q1Post a recovery card when forecast flips at_risk → on_track? (Thresholds are fire-once-per-month by design and don't apply.)No in v1 — reduces noise. The flip is recorded in the ledger and visible in the next digest. Reconsider after a month of real usage.
Q2One channel for everything, or split "digest" vs "alerts"?One channel (TEAMS_WEBHOOK_URL). Add a second var (TEAMS_WEBHOOK_URL_ALERTS) later if signal-to-noise becomes an issue.
Q3Should the digest post even when nothing has changed?Yes — the digest is the heartbeat. If it disappears, ops knows the sync is broken.
Q4Currency and time-zone formatting — USD + CET, or per-tenant config?USD + CET hard-coded in v1; pull from a settings module when there's more than one tenant.
Q5Hourly cadence too noisy?Keep hourly. The digest is one message; only edge-triggered breach/forecast cards add extra posts, and they're by definition uncommon.
Q6Where do the deep-link buttons point? Are there per-workspace pages today (/anthropic/workspaces/:id)?Confirm against the routing under src/app/(authed)/anthropic/ during implementation. If the per-workspace page doesn't exist, link to the global dashboard with an anchor.
+ +
+
+ + diff --git a/specs/030-claude-spend-teams-alerts/verification-dashboard.png b/specs/030-claude-spend-teams-alerts/verification-dashboard.png new file mode 100644 index 0000000000000000000000000000000000000000..ae4f4e8db4b5b8bb6a9d7fb5157d4df3ebe7b414 GIT binary patch literal 463930 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

MsMjFb!bKmtQ*N_=*a-mlo^#v5TIWyaQ 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

%nN0 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 z70╨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