Feature/360 add function references#387
Merged
felix-schultz merged 7 commits intodevfrom Nov 16, 2025
Merged
Conversation
- Updated various interfaces to use more specific types (e.g., changed `IDataType` to `IVariableType`). - Renamed interfaces for better clarity (e.g., `ICommentValue` to `IComment`, `IScoresObject` to `INodeScores`). - Changed array types from `any[]` to more specific types (e.g., `number[]`). - Consolidated timestamp interfaces into a single `ISystemTime` interface. - Improved documentation comments for better understanding of score categories. - Updated the schema generation script to handle type deduplication and shared types more effectively. - Ensured consistent naming conventions across interfaces and enums. - Adjusted the handling of optional properties and default values in interfaces.
…ion reference validation and deduplication
…ge with improved path handling and animations; update global CSS for new animations; modify flow-board-utils for connection type differentiation
…erenced_functions method in ExecutionContext for retrieving referenced nodes; streamline tool generation and execution logic
- Added `fnRefsHash` to `FlowNode` type for efficient tracking of function references. - Implemented memoization for connection states in `FlowNodeInner` to optimize rendering based on function reference connections. - Introduced new helper functions in `flow-board-helpers.ts` to manage function reference connections and regular pin connections. - Updated `handlePlaceNode` and `handlePlacePlaceholder` to support function reference connections when placing nodes. - Enhanced `handleConnection` and `handleEdgesChange` to manage function reference edges correctly. - Updated `parseBoard` to compute and store a hash of function references for nodes, ensuring accurate updates and rendering.
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.
Added function references. Mainly used for agentic behavior or dispatches.
This pull request refactors the agent and event node logic in the catalog package to improve how agent nodes reference and interact with function nodes, and to streamline event node organization. The most significant changes include removing the legacy
api_eventnode, enhancing theSimpleAgentNodeto dynamically generate tool schemas from referenced function nodes, and cleaning up unused input/output pins and update logic. These changes make agent nodes more flexible and maintainable while simplifying the event node structure.Agent node improvements:
generate_tool_from_functiontoSimpleAgentNodethat dynamically generates OpenAI tool/function schemas from referenced function nodes, improving integration and reducing manual schema management.tools,tool_call_id,tool_call_args). This also removes the need for complex pin update logic. [1] [2] [3] [4]Event node cleanup:
api_eventnode implementation and its module registration, simplifying the event node structure. [1] [2]Miscellaneous:
HashSetfrom agent node logic.These changes collectively improve modularity, maintainability, and extensibility for agents and events in the catalog.