Skip to content

Added description field to nodes.#7

Merged
lextatic merged 4 commits intomainfrom
feature/statescript
Feb 17, 2026
Merged

Added description field to nodes.#7
lextatic merged 4 commits intomainfrom
feature/statescript

Conversation

@lextatic
Copy link
Contributor

Added description field to nodes so editor tools can use that to help users understand what the nodes are used for.

Simplified the name of ExpressionCondition node to Expression node only. Our standard should keep out the words Action, Condition and State from the node names for the sake of simpler names.

@lextatic lextatic added the added New features label Feb 17, 2026
@lextatic lextatic marked this pull request as ready for review February 17, 2026 20:09
Copilot AI review requested due to automatic review settings February 17, 2026 20:09
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a Description field to Statescript nodes (intended for editor tooltips/docs) and standardizes a node name by renaming ExpressionConditionNode to ExpressionNode.

Changes:

  • Introduce Node.Description (virtual) and add/override descriptions on core and concrete node types.
  • Rename ExpressionConditionNode to ExpressionNode.
  • Update unit tests to use the renamed node type.

Reviewed changes

Copilot reviewed 10 out of 10 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
Forge/Statescript/Node.cs Adds base Description property for editor/tooling metadata.
Forge/Statescript/Nodes/StateNode.cs Adds default description for state-node base type.
Forge/Statescript/Nodes/State/TimerNode.cs Adds concrete node description override.
Forge/Statescript/Nodes/EntryNode.cs Adds concrete node description override.
Forge/Statescript/Nodes/ExitNode.cs Adds concrete node description override.
Forge/Statescript/Nodes/ConditionNode.cs Adds default description for condition-node base type.
Forge/Statescript/Nodes/Condition/ExpressionNode.cs Renames ExpressionConditionNode to ExpressionNode and adds description override.
Forge/Statescript/Nodes/ActionNode.cs Adds default description for action-node base type.
Forge/Statescript/Nodes/Action/SetVariableNode.cs Adds concrete node description override.
Forge.Tests/Statescript/ExpressionResolverTests.cs Updates tests to use ExpressionNode.
Comments suppressed due to low confidence (1)

Forge/Statescript/Nodes/Condition/ExpressionNode.cs:21

  • Renaming the public type ExpressionConditionNode to ExpressionNode is a breaking API change for any consumers constructing graphs in code. Consider keeping a backwards-compatible shim (e.g., an ExpressionConditionNode class marked [Obsolete] that forwards to ExpressionNode), or using a type-forwarder, so downstream projects don’t break immediately.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@lextatic lextatic merged commit 7f95fb5 into main Feb 17, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

added New features

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants