Skip to content

Semantic activity logs #469

@scotwells

Description

@scotwells

High-Level Summary

Users today have no intuitive way to see what happened inside their projects — only low-level audit log data. This enhancement introduces Activity Logs, a curated and semantic layer that translates raw platform events into clear, human-readable summaries of meaningful actions.

At the core of this system are Activity Descriptors — small, declarative definitions that describe how a given type of system event should be presented to a human user.

Each descriptor specifies:

  • Matching rules for which events it applies to (e.g., a Deployment update, a DNS record creation).
  • A template for how the event should be phrased (e.g., {{ actor }} created a DNS zone for {{ params.domainName }}).
  • Optional conditions and labels that provide context such as product area, category, or audience.

Descriptors act as a translation layer between structured machine data and human understanding. By evaluating them dynamically at read time, the platform can:

  • Render human-friendly summaries for any product area (DNS, Proxy, Domains, Access, etc.).
  • Evolve or reword messages without re-ingesting historical data.
  • Tailor phrasing and visibility to different audiences (Customer vs. Staff).
  • Support localization, A/B testing, or thematic variations in the future.

The result is a flexible, extensible framework that enables consistent, semantic Activity Logs across the entire platform — giving users immediate insight into what changed, who did it, and where it happened.

Motivation

Raw audit logs record the technical details of every API call — who made it, when, and what resource was touched. While invaluable for debugging or compliance, this information is too technical and low-level for most users trying to understand how their project has changed over time.

Activity Logs make that same information human-readable and contextual. They don’t analyze runtime behavior or service health — instead, they rephrase platform actions into clear, semantic descriptions of what configuration change occurred and who performed it.

This helps:

  • Customers understand how their project state is evolving without parsing audit payloads.
  • Support staff quickly verify user or system actions when troubleshooting.
  • Operators maintain consistent visibility into user-driven changes across product areas (DNS, Proxy, Domains, Access, etc.).

Goals

  • Provide a clear, semantic, and readable activity timeline for each project.
  • Define and manage reusable ActivityDescriptors for translating raw audit events into curated summaries.
  • Enable consistent phrasing and structure across all product areas.
  • Allow easy iteration on copy, labels, and presentation without data migrations.
  • Maintain high performance and low latency in the portal and API.

Non-Goals

  • Exporting activity logs to external sources
  • Capturing runtime or health events
  • Alerting / notifications

Notes

Refer to the product alignment document for more information on the high-level goals of this enhancement.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

Status

Done

Relationships

None yet

Development

No branches or pull requests

Issue actions