Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
41f29ef
feat(otel): ClickHouse-first OTEL metrics storage with full-fidelity …
dviejokfs Jun 26, 2026
e70e80d
feat(otel): temporality-aware rate() and histogram-summary aggregation
dviejokfs Jun 26, 2026
04fd866
test(otel): live-ClickHouse round-trip for exp-histogram/summary/exem…
dviejokfs Jun 26, 2026
956996c
fix(otel): temporality-correct histogram_summary (no cumulative doubl…
dviejokfs Jun 26, 2026
18c1f12
feat(web): wire metrics explorer to Phase C API + all-metrics overview
dviejokfs Jun 26, 2026
1b59c0e
feat(otel): metric dashboards v1 (sections + metric tiles)
dviejokfs Jun 26, 2026
a7dd43d
style(web): full-width metrics + dashboards pages
dviejokfs Jun 26, 2026
5384c54
feat(web): unify metrics + dashboards into one Metrics surface
dviejokfs Jun 26, 2026
0ff3f0e
feat(otel): metric alert rules v1 (threshold alerts + evaluator)
dviejokfs Jun 26, 2026
1a236ac
refactor(otel): forward-compatible detector schema for metric alert r…
dviejokfs Jun 26, 2026
bb9f4d9
feat(otel): v1 metric anomaly detection (robust seasonal MAD band)
dviejokfs Jun 26, 2026
9ec874a
feat(web): make the anomaly alert form legible
dviejokfs Jun 26, 2026
830a834
fix(web): edit form dropped changed Select values (aggregation, detec…
dviejokfs Jun 26, 2026
0ea7d70
feat(otel): anomaly backtest — "would this have fired?"
dviejokfs Jun 26, 2026
15ad1c3
feat(web): shade the anomaly band on the metrics explorer
dviejokfs Jun 26, 2026
6b068ce
feat(web): Datadog-style "what's wrong" surface for OTEL metrics
dviejokfs Jun 26, 2026
850d94f
feat(web): deploy markers on the metrics explorer chart (Tier 2)
dviejokfs Jun 26, 2026
1d19618
feat(web): cross-signal "what changed" strip on the metrics drill-in …
dviejokfs Jun 26, 2026
1e31aa7
fix(web): keep the project header on one line for long titles
dviejokfs Jun 26, 2026
8f2dcea
feat(web): Datadog-style firing status on metric dashboards
dviejokfs Jun 26, 2026
db15dd4
refactor(web): group project nav into OpenTelemetry + Monitoring
dviejokfs Jun 26, 2026
8ef2bf3
docs(changelog): add Unreleased entry for OpenTelemetry metrics (#158)
dviejokfs Jun 26, 2026
f20f79a
fix(otel): qualify service_name in trace WHERE to dodge alias-shadow
dviejokfs Jun 26, 2026
44d6520
feat(web): show the anomaly band + breach on the metric chart
dviejokfs Jun 26, 2026
e136056
feat(web): show the anomaly band on standalone metric tiles
dviejokfs Jun 27, 2026
4117d8a
feat(web): custom date-range filter in the metrics explorer
dviejokfs Jun 27, 2026
3da38a6
feat(otel): embed a Datadog-style chart in metric-alert emails
dviejokfs Jun 27, 2026
8568e2e
feat(otel): add x-axis time ticks to alert email chart
dviejokfs Jun 27, 2026
ccba779
docs(adr): ADR-021 humanized alert notification text
dviejokfs Jun 27, 2026
533a419
feat(otel): humanize metric alert notification text (ADR-021 Tier 1)
dviejokfs Jun 27, 2026
a605b73
docs(adr): ADR-022 general AI foundation for typed/structured output
dviejokfs Jun 27, 2026
20533bf
feat(ai): general AiService foundation for typed/structured output (A…
dviejokfs Jun 27, 2026
12f17f4
refactor(ai): extract reusable temps-ai crate with schemas + diagnostics
dviejokfs Jun 27, 2026
f9d2545
docs(adr): ADR-023 persistent AI debugging conversations
dviejokfs Jun 27, 2026
48610b5
feat(ai): add multi-turn streaming (chat_stream) to AiService (ADR-023)
dviejokfs Jun 27, 2026
3ac9d53
feat(ai): ai_conversations + ai_messages schema + project toggle (ADR…
dviejokfs Jun 27, 2026
f86d503
feat(ai): temps-ai-chat crate — conversation service + provider trait…
dviejokfs Jun 27, 2026
ec19a25
feat(ai): deployment debug-chat provider + SSE endpoints + plugin (AD…
dviejokfs Jun 27, 2026
b5afc7c
feat(projects): expose ai_alert_summaries_enabled + ai_debug_chat_ena…
dviejokfs Jun 27, 2026
e9f7dc4
chore(web): regenerate SDK for AI chat routes + project AI toggles (A…
dviejokfs Jun 27, 2026
4dcf7bb
feat(web): AI Assistance settings card — debug chat + alert summary t…
dviejokfs Jun 27, 2026
f95cf4a
feat(web): DeploymentDebugChat — streaming AI debug chat on failed de…
dviejokfs Jun 27, 2026
c3d71bb
feat(ai): log-tail enrichment + alert investigation provider (ADR-023)
dviejokfs Jun 27, 2026
f05ae50
feat(web): generalize DebugChat + mount on alert form (ADR-023)
dviejokfs Jun 27, 2026
e9e5978
fix(ai): default model fallback so a provider key alone enables AI (A…
dviejokfs Jun 27, 2026
38f89ea
feat(ai): agentic repo tool-calling, live context refresh & cross-pro…
dviejokfs Jun 28, 2026
83c1f73
feat(web): AI Providers settings + persistent cross-project assistant…
dviejokfs Jun 28, 2026
9364d5a
Merge branch 'main' into feat/otel-metrics-clickhouse
dviejokfs Jun 28, 2026
20f09a3
fix(ai): PR #158 review — tenant-scope guards, traversal/UTF-8 harden…
dviejokfs Jun 28, 2026
ca87526
fix(ai): PR #158 review — medium findings (ADR-022/023)
dviejokfs Jun 28, 2026
8cc6bdc
feat(web): make the AI assistant button global in the top bar (ADR-023)
dviejokfs Jun 28, 2026
c5a3803
feat(ai): stream tool calls/results to the chat UI + project favicons…
dviejokfs Jun 28, 2026
95f9c1b
feat(ai): persist tool calls for reload + chat timestamps + icon-only…
dviejokfs Jun 28, 2026
6b2263e
fix(cli): cancel the running migration backend on Ctrl+C
dviejokfs Jun 28, 2026
0052b39
feat(observe): show only root spans in the feed and search all spans …
dviejokfs Jun 28, 2026
cd3ad03
feat(observability): storage-agnostic TraceReader (temps-core trait +…
dviejokfs Jun 28, 2026
7a8b6c4
feat(ai-chat): project-level chats, AI trace tools, and write-path se…
dviejokfs Jun 28, 2026
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
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ dist/
.settings/
target
target2
ai
/ai

.cargo/config.toml
*.crt
Expand Down
36 changes: 35 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,25 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased]

### Added
- **OpenTelemetry metrics.** A full OTLP metrics pipeline backed by ClickHouse,
with a Metrics explorer, saved dashboards, and first-class metric alert rules.
Alerts support **anomaly detection** (a robust, seasonal median/MAD baseline)
alongside static thresholds, with sensitivity presets and a **backtest
preview** ("would have fired N times") while you author the rule. Charts
overlay **deploy markers** ("did a deploy cause this?") and a firing metric
links straight across to its traces and errors in the same window
("what changed"). Datadog-style firing status — triaged dots, severity sort,
and a needs-attention header — surfaces on the metrics overview, the
dashboards list, and the dashboard view (#158).
- **AI-assisted debugging & assistant (bring-your-own-key).** Configure an AI
provider (OpenAI, Anthropic, xAI, or Google Gemini) under **Settings → AI
Providers** to power a persistent, cross-project AI assistant dock with
resumable conversations. It diagnoses **failed deployments** (grounded in the
pipeline's failed stages and build-log tails) and **firing alerts**, can
agentically **read repository files at the deployed commit via the configured
Git provider** (no clone), and humanizes alert notifications. Keys are verified
before being stored encrypted, and the first active key serves every AI feature
(#158).
- **Cloudflare Email Sending notification provider.** A new notification
provider delivers alert emails through Cloudflare's transactional Email
Sending API instead of a self-managed SMTP relay. Operators configure only an
Expand All @@ -19,13 +38,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
(#160).

### Changed
- **Project navigation grouped into OpenTelemetry + Monitoring.** The OTel
signals (Observe, Traces, AI Traces, Metrics, Error Tracking) are now grouped
under an **OpenTelemetry** section; operational tools (Uptime, Request Logs,
AI Crawlers) under **Monitoring** (#158).
- **Project header stays on one line.** A long project name in the breadcrumb
switcher (and long crumbs on deep paths) now truncates with an ellipsis
instead of wrapping the header onto two lines (#158).
- **Documentation: local build prerequisites.** The installation guide and
`CONTRIBUTING.md` now document the system prerequisites required to build
Temps from source locally (toolchain and dependencies), so new contributors
can get a local build working without trial and error.

### Removed
- **Legacy project "Metrics" (resource monitoring) page.** Superseded by the
OpenTelemetry Metrics surface; its sidebar entry, route, and page component
were removed (#158).

### Fixed
-
- **Disabled alert rules no longer report as "firing".** A rule disabled while
firing kept a frozen `firing` state (the evaluator only scans enabled rules);
the status model now treats a disabled monitor as not-firing everywhere, so
dashboards and the alerts list don't flash a false red alarm (#158).


## [0.1.0-beta.39] - 2026-06-25
Expand Down
Loading
Loading