Refactor#1
Draft
Davidiusdadi wants to merge 35 commits intomasterfrom
Draft
Conversation
- introspection protocol - more nodes - arrows into sub canvas - library build - factor out experimental dependency bloat - add library build target
- produce less stdout by default - add new debug node - minor changes
- lots of minor changes - reduced std output - try multiple build targets for electron compat
core: - add parallel execution - add logger trace level - move joiner from this to ctx - make frames refer to their parent nodes: - yaml-llm - impl. llm output streaming - impl. llm retry on error - add 10s bash process timeout (for now) - remove `emit-state` - `emit-input` now also returns it's input - add switch node - that picks and edge based on given _.get(path) - or defaults to `default` & `else` edges - does some sanity checks - dev-server (still early WIP) - add multi canvas capability - show input and state
- Fixed all example commands to use correct feature-tour paths - Made .env file optional (only needed for LLM features) - Added note about harmless canvas package build warning - Reorganized examples into "No API Key Required" and "Require API Key" sections - Fixed typos: Obsidan→Obsidian, anyting→anything, fist→first, promptes→prompts - Fixed image paths to correct feature-tour directory - Renamed .env.exampe to .env.example - Fixed Anthropic configuration: ANTROPIC→ANTHROPIC with correct API endpoints - Updated Anthropic model to claude-3-5-haiku-20241022 https://claude.ai/code/session_01871jyJg9rKfR4QAooAyHmU
Fix typos and improve documentation clarity
Fixed a race condition where aggregate() would complete while other frames for the same node were still executing their initial attempt, causing those frames to later execute with empty _invocations and return incorrect results. ## Problem When multiple frames for the same node executed in parallel, the aggregate readiness check only waited for ancestor nodes to complete. This allowed one frame to execute aggregate() while sibling frames were still running, leading to extra invocations after _invocations was cleared. ## Solution Added `no_sibling_frames` check to ensure aggregate only executes when ALL frames for that node have completed their initial execution and pushed back to the stack. This guarantees aggregate happens on the very last invocation, as designed. ## Testing - ✅ All 7 feature-tour tests pass - ✅ aggregate-async.canvas: 21 items (async waves work correctly) - ✅ aggregate-loop.canvas: 21 items (loop aggregation works) - ✅ zip-and-aggregate.canvas: 2 items (mixed operations work) https://claude.ai/code/session_01871jyJg9rKfR4QAooAyHmU
- Added docs/how-to-create-a-canvas.md with canvas format guide - Removed claude-vault test canvases (no longer needed) - Documentation covers purpose, JSON format, and node instructions https://claude.ai/code/session_01871jyJg9rKfR4QAooAyHmU
…dition-UXwVz Claude/fix aggregate race condition
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.