Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
c9c7f2f
runtime-next: add Rust-driven runtime crate
jgraettinger May 7, 2026
a211243
labels: fix RCLOCK_BEGIN_MIN typo
jgraettinger May 15, 2026
a911753
proto-flow: serialize bytesBehind as a native JSON integer
jgraettinger May 15, 2026
8aa7599
models: drop redact annotations from relaxed schemas
jgraettinger May 15, 2026
6b3dfac
gazette: disable do_not_proxy for file:// fragment reads
jgraettinger May 15, 2026
ada16c7
runtime: rename Persist/Persisted nonce field to seq_no
jgraettinger May 15, 2026
482d129
dekaf-e2e: provision test tenant via onboarding API; unify on FLOW_AU…
jgraettinger May 15, 2026
7d27ee0
docs: consolidate runtime sidecar naming
jgraettinger May 15, 2026
68cc4aa
runtime-sidecar: binary hosting Shuffle and Leader gRPC services
jgraettinger May 15, 2026
080437f
go/runtime: wire up flagged V2 materialization app
jgraettinger May 15, 2026
9990ab5
publisher: split Binding into Mapped and Fixed variants
jgraettinger May 15, 2026
3158644
auth: grant V2 journal clients a joint APPEND|APPLY|LIST capability
jgraettinger May 15, 2026
1a95eae
bindings: initialize rustls with aws_lc_rs as the default provider
jgraettinger May 15, 2026
ab4b45e
runtime-next: source stats journal from labeling; route log level via…
jgraettinger May 15, 2026
3851629
runtime-next: prune stale committed-frontier entries during recovery …
jgraettinger May 15, 2026
b02ffcc
runtime-next: fix leader close-policy thresholds and stats orientation
jgraettinger May 15, 2026
0ec2cb7
runtime: strip the V2 committed-close marker on rollback to V1
jgraettinger May 15, 2026
bb52903
go/runtime: fail the shard when the runtime-v2 feature flag is toggled
jgraettinger May 15, 2026
d195be8
mise: add runtime-sidecar systemd unit and local data-plane wiring
jgraettinger May 15, 2026
33f031a
service-kit: observability crate for handler registry, admin surface,…
jgraettinger May 15, 2026
1bdc06a
shuffle, runtime-next: adopt service-kit for handler registry and eve…
jgraettinger May 15, 2026
001af0c
runtime-next: reconcile checkpoint state at V1->V2 cutover
jgraettinger May 16, 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
32 changes: 19 additions & 13 deletions AGENTS.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
# CLAUDE.md

Estuary is a real-time data platform with:
- Control plane: user-facing catalog management APIs
- Data planes: distributed runtime execution
Expand Down Expand Up @@ -38,17 +36,18 @@ mise run ci:sql-tap

# E2E tests over derivation examples (SLOW)
mise run ci:catalog-test
```

### Development

A development Supabase instance is available:
```bash
# Start (just) local Supabase.
mise run local:supabase
# Reset with current migrations as needed
supabase db reset

# Interact directly with dev DB
psql postgresql://postgres:postgres@localhost:5432/postgres -c 'SELECT 1;'

# Start a complete local stack (see local/README.md)
mise run local:stack
# CLI for interacting with the platform.
cargo run -p flowctl -- --profile local --help
```

## Architecture Overview
Expand All @@ -69,6 +68,13 @@ The control plane compiles the user's catalog model into
**built specs** that have extra specifics required by the runtime,
and activates specs into their associated data plane.

Collections and tasks live in a unified, hierarchical namespace.
`/`-delimited prefixes act as "roles" and are the unit of AuthZ.
Users are granted capabilities to roles (`user_grants` table),
and roles are granted capabilities to other roles (`role_grants`).
A top-level prefix like `acmeCo/` homes an organization and
is called a "tenant".

### Control-plane components
- **Supabase**: catalog and platform config DB
- **Agent**: APIs and background automation
Expand All @@ -83,9 +89,9 @@ and activates specs into their associated data plane.
### Protocols

- `go/protocols/flow/flow.proto` - core types and built specs
- `go/protocols/capture/capture.proto` - protocol for capture tasks
- `go/protocols/derive/derive.proto` - for derivation tasks
- `go/protocols/materialize/materialize.proto` - for materialization tasks
- `go/protocols/capture/capture.proto`
- `go/protocols/derive/derive.proto`
- `go/protocols/materialize/materialize.proto`

## README.md

Expand Down Expand Up @@ -115,8 +121,8 @@ Keep READMEs current - update with code changes.
The exception is state machines: structs and enums that encapsulate fine-grain
POD state into higher-order transitions that are easier to reason about.
DO seek to decompose problems into state machines.
- Avoid trivial impl routines which could be inlined by the caller.
Indirection is harder to read; routines must buy us something.
- Avoid routines with trivial bodies that could be inlined into the caller.
Indirection has cost (hard to read): each routine must buy us something.
- Decompose IO and POD processing into separate routines where possible.
Routines should gravitate towards IO or processing, and not mix both.

Expand Down
133 changes: 0 additions & 133 deletions CLAUDE.md

This file was deleted.

1 change: 1 addition & 0 deletions CLAUDE.md
Loading
Loading