Analyzed 37 days ago · 2 anonymous rescans remaining · register free to re-analyze any time.
Public analysis · read only
Register free to re-analyze

ShaneDolphin/gorapide

4 1 0 issues
Go
MIT

Project Overview

anthropic / claude-opus-4-7

gorapide

Go library implementing Stanford Rapide's causal event architecture semantics with posets, patterns, and constraints.

AI Verdict
Clean— AI Trust Assessment

True Intent (AI Assessment)

A Go library that implements Rapide's causal event-driven architecture semantics for modeling, verifying, and observing concurrent/distributed systems.

README Accuracy

Accurate

Notes

Code structure, package layout, and APIs match the README's claims exactly. Zero-dependency core is verified by go.mod. Sub-modules for OTel and the studio web app are properly isolated.

What Is This?

gorapide is a Go implementation of the Stanford Rapide 1.0 architecture description language semantics. It models software systems as concurrent components communicating through partially ordered event sets (posets), where each event carries a causal history via Lamport timestamps and optional vector clocks. This enables reasoning about happens-before relationships, verifying architectural constraints, and observing system behavior at the architecture level rather than the code level.

The problem it addresses is that traditional tracing and logging tools capture events as flat streams or tree-shaped traces, which loses the true concurrent, causal structure of distributed systems. Rapide's poset-based model preserves independence and causal ordering explicitly, letting developers write formal patterns (sequence, join, independence, timing windows) and constraints that can be checked at runtime. This is useful for verifying that pipelines actually do what their architecture diagrams claim.

The intended users are Go developers building event-driven, concurrent, or distributed systems who want architecture-level observability and formal verification. The included ATO scanner example targets security/compliance pipelines. Users interact through a fluent builder API for constructing posets, an arch package for defining components/connections/behaviors, and optionally the Rapide Studio web UI for drag-and-drop visual design and live simulation. Output can be exported to DOT, Mermaid, JSON, or streamed live to OpenTelemetry collectors as OTLP spans.

Architecturally, the core module has zero external dependencies and centers on Event, Poset, and VectorClock types. Sub-packages layer on: pattern implements the Event Pattern Language (match, seq, join, independent, timing); constraint provides runtime checkers; arch supplies the component/connection/binding runtime with hierarchical composition; dsync implements grow-only CRDT poset merging across nodes; studio backs the visual editor with schema/recorder/replay; otelexport (separate go.mod) bridges to OpenTelemetry; and cmd/rapide-studio (separate go.mod) is a self-contained web app using Cytoscape.js and WebSockets.

The codebase appears mature and well-organized: every source file has a corresponding _test.go, sub-modules are isolated by their own go.mod files to keep the core dependency-free, and the design decisions (immutable events, non-mutating VectorClock operations, replace directives for local development) are consistent with production Go idioms. No red flags observed.

Your Report, Tab by Tab
At a Glance
4Stars
1Forks
0Open Issues
July 2026Last Active
LibraryGoMIT
Technology Stack
LanguagesGo, JavaScript, HTML, CSS
RuntimeGo 1.22+
FrameworkNone (standard library only in core)
DatabaseNone detected (in-memory posets)
Package ManagerGo modules
Key DependenciesCore has zero external dependencies; otelexport uses go.opentelemetry.io/otel v1.43, otlptracegrpc, otlptracehttp, otel/sdk; rapide-studio uses golang.org/x/net for WebSockets and Cytoscape.js on the frontend
Build Toolgo build
Test FrameworkGo standard testing package