Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add spec aided by claude code #966

Merged
merged 2 commits into from
Mar 10, 2025
Merged

Add spec aided by claude code #966

merged 2 commits into from
Mar 10, 2025

Conversation

nfcampos
Copy link
Contributor

@nfcampos nfcampos commented Mar 6, 2025

Fixes # (issue)

@nfcampos nfcampos marked this pull request as draft March 6, 2025 23:19
- Integration tests: `yarn test:int` (start deps: `yarn test:int:deps`, stop: `yarn test:int:deps:down`)

## Code Style Guidelines
- **TypeScript**: Target ES2021, NodeNext modules, strict typing enabled
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not correct atm - would be nice if it were, though


## Code Style Guidelines
- **TypeScript**: Target ES2021, NodeNext modules, strict typing enabled
- **Formatting**: 2-space indentation, 80 char width, double quotes, semicolons required
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

probably good if it tries to keep to 80 or 120 char width, but we don't enforce this

- **Channels Layer**: Base communication & state management (BaseChannel, LastValue, Topic)
- **Checkpointer Layer**: Persistence and state serialization across backends
- **Pregel Layer**: Message passing execution engine with superstep-based computation
- **Graph Layer**: High-level APIs for workflow definition (Graph, StateGraph)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

missing functional API

Comment on lines 35 to 40
* Communication Model:
* - Nodes NEVER communicate directly with each other
* - All communication is mediated through Channels
* - Nodes subscribe to Channels to receive data
* - Nodes write to Channels to share data
* - Channels can customize how values are accumulated (last value, append to list, etc.)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Worth mentioning values here? it's kind of mentioned in the last point, but not explicitly

Comment on lines 136 to 147
* Key Classes:
* - Graph: Base graph class for defining workflow structure
* - StateGraph: Specialized graph for stateful workflows
* - CompiledGraph (extends Pregel): Runtime representation of a graph
* - Annotation: Type specification for graph state
* - Branch: Handles conditional routing between nodes
*
* Core Functionality:
* - Graph Construction: Define nodes, edges, and execution flow
* - State Definition: Specify and validate state schemas
* - Compilation: Transform graph definitions into executable Pregel instances
* - Visualization: Generate visualizations of graph structure
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be hard to define here, but it'd be nice if there was some (even terse) statements that said how each of these map to the pregel model

@nfcampos nfcampos marked this pull request as ready for review March 7, 2025 00:33
@benjamincburns benjamincburns merged commit 6800311 into main Mar 10, 2025
23 of 38 checks passed
@benjamincburns benjamincburns deleted the nc/6mar/claude branch March 10, 2025 03:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants