Releases: griptape-ai/griptape-nodes-engine
Releases · griptape-ai/griptape-nodes-engine
latest
feat: add description field to DirectoryDefinition (#4929) * feat: add description field to DirectoryDefinition Closes griptape-ai/griptape-nodes-engine#4927. Project directories previously carried only a name and a path macro, leaving their purpose implicit. Add an optional human-readable description field, populate it on the system defaults, and bump the project template schema version to 0.5.0. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * test: align save-path fixtures with new directory description field Adding `description` to `DirectoryDefinition` and populating it on the default directories meant a parent template's `outputs` directory now inherits a non-null description from `DEFAULT_PROJECT_TEMPLATE`. Four `TestSaveProjectTemplate` fixtures hand-built a child `outputs` entry that omitted `description`, causing the per-item atomic diff in `to_overlay_yaml` to treat the child as divergent and emit tombstones for the inherited siblings. Update the fixtures to include the inherited description so they mirror the merged-template shape the GUI actually sends back. Also add two new save-path tests that exercise the new field directly: emitting a custom description while the path stays inherited, and clearing an inherited parent description with explicit null. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
v0.88.0
What's Changed
📦 Dependencies
- ci(deps): bump actions/checkout from 6 to 7 by @dependabot[bot] in #4886
- deps: bump fastapi from 0.137.0 to 0.138.0 by @dependabot[bot] in #4887
- deps: bump typos from 1.47.0 to 1.47.2 by @dependabot[bot] in #4888
- deps: bump huggingface-hub from 1.16.1 to 1.20.1 by @dependabot[bot] in #4889
- deps: bump anyio from 4.13.0 to 4.14.0 by @dependabot[bot] in #4890
- deps: bump json-repair from 0.60.1 to 0.61.0 by @dependabot[bot] in #4891
Other Changes
- docs(node-manager): TODO for allowlist-based element command retargeting by @griptapeops[bot] in #4863
- Respect optional references in macros by @cjkindel in #4866
- feat(library): inter-library dependencies via library_dependencies manifest field by @hutchinson in #4752
- feat(library): add request/response handler registration for libraries by @hutchinson in #4762
- fix(library-manager): surface metadata-load failures in library status by @griptapeops[bot] in #4869
- feat(workflows): add RefreshWorkflowRegistryRequest by @shhlife in #4877
- Add workspace configuration reference docs by @cjkindel in #4893
- fix(library): restore inter-library dependency feature lost in bad merge by @hutchinson in #4897
- Worker Project Inheritance by @cjkindel in #4871
- fix(init): handle object-form library entries when filtering old XDG paths by @collindutter in #4901
- add is_internal to workflow schema by @cjkindel in #4867
- perf: reduce Workflow Browser load time by eliminating redundant config and git lookups by @shhlife in #4895
- fix(mcp): shield engine dispatch so a client timeout doesn't cancel in-flight work by @collindutter in #4905
- chore: bump v0.87.1 by @collindutter in #4898
- chore: bump v0.87.2 by @collindutter in #4907
- feat(hf-param): replace download badges with inline dropdown UX by @shhlife in #4903
- Projects now inherit parent's workspace is not provided by @cjkindel in #4878
- chore: bump v0.87.3 by @collindutter in #4916
- feat(manifest): expose the aggregated model catalog by @collindutter in #4904
- feat(permissions): authorization checkpoint hooks for resolved-resource gating by @collindutter in #4899
- refactor(model-events): identify declared invocations by stable model_id by @collindutter in #4917
Full Changelog: v0.87.0...v0.88.0
v0.87.3
Full Changelog: v0.87.2...v0.87.3
v0.87.2
Full Changelog: v0.87.1...v0.87.2
v0.87.1
What's Changed
✨ Enhancements
- feat: add MakeDirectoryRequest by @alex-rumsey-foundry in #4799
- feat: add Directory and FileSequence file type data models by @alex-rumsey-foundry in #4804
📦 Dependencies
- deps: bump uvicorn from 0.46.0 to 0.49.0 by @dependabot[bot] in #4818
- deps: bump pygit2 from 1.19.2 to 1.19.3 by @dependabot[bot] in #4819
- deps: bump pymdown-extensions from 10.21.2 to 10.21.3 by @dependabot[bot] in #4820
- deps: bump pyright from 1.1.409 to 1.1.410 by @dependabot[bot] in #4821
- deps: bump fastapi from 0.136.3 to 0.137.0 by @dependabot[bot] in #4822
- deps: bump urllib3 from 2.6.3 to 2.7.0 by @dependabot[bot] in #4843
- deps: bump pip from 26.0 to 26.1 by @dependabot[bot] in #4847
- deps: bump starlette from 0.52.1 to 1.3.1 by @dependabot[bot] in #4844
- deps: bump cryptography from 46.0.6 to 48.0.1 by @dependabot[bot] in #4845
- deps: bump pyjwt from 2.12.1 to 2.13.0 by @dependabot[bot] in #4846
Other Changes
- fix(vscode): repair launch.json after engine/app split by @SavagePencil in #4790
- fix(agent): inherit parent env for stdio MCP servers by @collindutter in #4791
- Add enabled to LibraryMetadata by @kateforsberg13 in #4794
- ParameterTransition component to retain existing connections when parameters dynamically change by @SavagePencil in #4537
- chore: stop tracking .vscode/settings.json (already in .gitignore) by @griptapeops[bot] in #4800
- add worker cleanup escalation via _terminate_managed_process by @cjkindel in #4802
- Adds a save_temp_file Project Situation by @hutchinson in #4798
- save_workflow situation docs by @cjkindel in #4803
- Update Blender MCP docs to use official Blender Lab server by @shhlife in #4812
- docs/Project nits by @cjkindel in #4810
- Move project selection to -app by @cjkindel in #4826
- fix: stop rejecting forwarded storage_backend on LocalWorkflowExecutor run path by @zachgiordano in #4829
- fix: surface library-loading progress during engine startup by @collindutter in #4809
- feat(manifest): add GenerateManifestRequest for libraries and projects by @collindutter in #4830
- chore: bump v0.86.1 by @collindutter in #4832
- improved derived variable messaging by @cjkindel in #4834
- feat(models): add DeclareModelInvocationRequest declaration by @collindutter in #4808
- Fix non-async worker termination code by @cjkindel in #4823
- Project's validation for Engine and Library versions by @cjkindel in #4797
- feat(declarations): model catalog with provider/model registry and node references by @collindutter in #4838
- implement project_id by @cjkindel in #4835
- feat(libraries): add arbitrary_python_execution node declaration by @collindutter in #4837
- Support for registering a directory of projects by @cjkindel in #4840
- feat(declarations): add get_declared_models helper to resolve a node's catalog models by @collindutter in #4842
Full Changelog: v0.86.0...v0.87.1
v0.87.0
What's Changed
✨ Enhancements
- feat: add MakeDirectoryRequest by @alex-rumsey-foundry in #4799
- feat: add Directory and FileSequence file type data models by @alex-rumsey-foundry in #4804
📦 Dependencies
- deps: bump uvicorn from 0.46.0 to 0.49.0 by @dependabot[bot] in #4818
- deps: bump pygit2 from 1.19.2 to 1.19.3 by @dependabot[bot] in #4819
- deps: bump pymdown-extensions from 10.21.2 to 10.21.3 by @dependabot[bot] in #4820
- deps: bump pyright from 1.1.409 to 1.1.410 by @dependabot[bot] in #4821
- deps: bump fastapi from 0.136.3 to 0.137.0 by @dependabot[bot] in #4822
- deps: bump urllib3 from 2.6.3 to 2.7.0 by @dependabot[bot] in #4843
- deps: bump pip from 26.0 to 26.1 by @dependabot[bot] in #4847
- deps: bump starlette from 0.52.1 to 1.3.1 by @dependabot[bot] in #4844
- deps: bump cryptography from 46.0.6 to 48.0.1 by @dependabot[bot] in #4845
- deps: bump pyjwt from 2.12.1 to 2.13.0 by @dependabot[bot] in #4846
Other Changes
- fix(vscode): repair launch.json after engine/app split by @SavagePencil in #4790
- fix(agent): inherit parent env for stdio MCP servers by @collindutter in #4791
- Add enabled to LibraryMetadata by @kateforsberg13 in #4794
- ParameterTransition component to retain existing connections when parameters dynamically change by @SavagePencil in #4537
- chore: stop tracking .vscode/settings.json (already in .gitignore) by @griptapeops[bot] in #4800
- add worker cleanup escalation via _terminate_managed_process by @cjkindel in #4802
- Adds a save_temp_file Project Situation by @hutchinson in #4798
- save_workflow situation docs by @cjkindel in #4803
- Update Blender MCP docs to use official Blender Lab server by @shhlife in #4812
- docs/Project nits by @cjkindel in #4810
- Move project selection to -app by @cjkindel in #4826
- fix: stop rejecting forwarded storage_backend on LocalWorkflowExecutor run path by @zachgiordano in #4829
- fix: surface library-loading progress during engine startup by @collindutter in #4809
- feat(manifest): add GenerateManifestRequest for libraries and projects by @collindutter in #4830
- chore: bump v0.86.1 by @collindutter in #4832
- improved derived variable messaging by @cjkindel in #4834
- feat(models): add DeclareModelInvocationRequest declaration by @collindutter in #4808
- Fix non-async worker termination code by @cjkindel in #4823
- Project's validation for Engine and Library versions by @cjkindel in #4797
- feat(declarations): model catalog with provider/model registry and node references by @collindutter in #4838
- implement project_id by @cjkindel in #4835
- feat(libraries): add arbitrary_python_execution node declaration by @collindutter in #4837
- Support for registering a directory of projects by @cjkindel in #4840
- feat(declarations): add get_declared_models helper to resolve a node's catalog models by @collindutter in #4842
- project version pinning docs by @cjkindel in #4860
- Download library to project workspace when required by @cjkindel in #4858
- fix(nodes): construct introspection probes with the node's library context by @collindutter in #4854
- Output value going from unset to None doesn't update the UI by @griptapeops[bot] in #4848
- library/workflows to use common afind_files_recursive by @cjkindel in #4841
- fix(node-manager): retarget ParameterGroup commands when deserializing a node copy by @griptapeops[bot] in #4856
- preserve workflow path on rename by @cjkindel in #4850
- feat(agent): user-configurable agent instructions by @shhlife in #4853
New Contributors
- @hutchinson made their first contribution in #4798
Full Changelog: v0.86.0...v0.87.0
v0.86.1
Full Changelog: v0.86.0...v0.86.1
v0.86.0
What's Changed
✨ Enhancements
- feat: expose GetNextVersionIndexRequest for O(1) version slot discovery by @alex-rumsey-foundry in #4726
📦 Dependencies
- deps: bump mdformat-frontmatter from 2.0.10 to 2.1.2 by @dependabot[bot] in #4720
- deps: bump huggingface-hub from 1.14.0 to 1.17.0 by @dependabot[bot] in #4721
- deps: bump uv from 0.11.14 to 0.11.17 by @dependabot[bot] in #4722
- deps: bump typos from 1.46.2 to 1.47.0 by @dependabot[bot] in #4723
- deps: bump python-multipart from 0.0.29 to 0.0.30 by @dependabot[bot] in #4724
- ci(deps): bump codecov/codecov-action from 6 to 7 by @dependabot[bot] in #4772
- deps: bump pytest-asyncio from 1.3.0 to 1.4.0 by @dependabot[bot] in #4773
- deps: bump python-multipart from 0.0.30 to 0.0.32 by @dependabot[bot] in #4774
- deps: bump typer from 0.25.1 to 0.26.7 by @dependabot[bot] in #4775
- deps: bump griptape-cloud-client from 0.1.0 to 0.2.0 by @dependabot[bot] in #4776
- deps: bump json-repair from 0.59.10 to 0.60.1 by @dependabot[bot] in #4777
Other Changes
- replace emdash from tests for Windows compat by @cjkindel in #4666
- Add ListModelsForProvider events by @cjkindel in #4665
- Add node_types filter to ListNodesInFlowRequest by @shhlife in #4681
- feat: move executor CLI args onto WorkflowExecutor by @zachgiordano in #4649
- Add gtn-editor://editor to domain allowlist by @cjkindel in #4684
- chore: bump v0.85.1 by @collindutter in #4685
- fix: bump griptape floor to 1.10.2 by @collindutter in #4692
- Library and Node Identity Properties by @SavagePencil in #4502
- feat(mcp): expose GetConfigValueRequest and GetWorkspaceRequest by @collindutter in #4690
- chore: bump v0.85.2 by @collindutter in #4695
- perf(boot): silence internal ListRegisteredLibrariesRequest broadcasts by @collindutter in #4701
- chore: bump v0.85.3 by @collindutter in #4699
- Add perPlatformPathMacro support by @cjkindel in #4697
- Engine-level sequence support via fileseq by @SavagePencil in #4550
- feat: add exec_in/exec_out control ports to iterative group nodes by @kateforsberg13 in #4571
- Feat/sequence events by @SavagePencil in #4711
- feature: add estimated size to search results and GetModelInfoRequest for exact size by @shhlife in #4708
- Add local variable retrieval functionality to RunArbitraryPythonStringRequest by @SmoolPerson in #4351
- Improve missing library log content by @cjkindel in #4728
- Fix/resolve project paths by @cjkindel in #4717
- fix: GetParameterValueRequest should return computed output by @feltech in #4693
- Add extension matching for media artifacts by @cjkindel in #4667
- ArtifactManager check for preview availability from ArtifactProvider by @cjkindel in #4733
- feat(strict-mode): orchestrator/worker correctness contract with 4 rules by @cjkindel in #4670
- feat: add pre-dispatch hook chain to EventManager by @collindutter in #4737
- Add parent_project_path to project schema by @cjkindel in #4698
- Reset Node Bug (Engine Fix) by @aodhanroche in #4734
- feat(agent): migrate the chat sidebar agent to pydantic-ai by @collindutter in #4730
- Feat/lib worker docs by @cjkindel in #4751
- fix: specify encoding="utf-8" on all text file reads/writes to prevent cp949 UnicodeDecodeError by @kateforsberg13 in #4750
- fix: handle blob, serialized, and error artifacts in PublicArtifactUrlParameter by @collindutter in #4755
- Removing app launch capability from the engine by @zachgiordano in #4731
- Coerce file extension to match bytes on save by @cjkindel in #4761
- Use Declaration for worker_mode by @cjkindel in #4754
- remove project_macro_path by @cjkindel in #4764
- Docs: pin Python 3.12 in editable-install command by @griptapeops[bot] in #4768
- Fix Model Manager download: spawn a runnable module by @griptapeops[bot] in #4769
- fix: emit library-derived imports inside build_workflow() to fix headless ModuleNotFoundError by @kateforsberg13 in #4765
- Feat/worker mode toggle by @cjkindel in #4759
- Use griptape_nodes_app entrypoint for worker spawn by @cjkindel in #4780
- feat: add make run targets to launch the engine from this checkout by @collindutter in #4784
- fix(serialization): dump NodeMetadata at boundary to fix BETA workflow reload (#4770) by @SavagePencil in #4783
- fix(mcp): dispatch requests in-process instead of over a second WebSocket by @collindutter in #4758
- PerPlatformProjectPath for settings/projects by @cjkindel in #4725
- feat(sequences): macro-path round-trip and explicit NoTokenBehavior dispatch by @SavagePencil in #4771
- feat(mcp): add node info + param list + save workflow + source location by @feltech in #4732
- Fix: update the index key on connections on rename by @aodhanroche in #4787
- End-user focused Library docs by @cjkindel in #4753
New Contributors
- @alex-rumsey-foundry made their first contribution in #4726
Full Changelog: v0.85.0...v0.86.0
v0.85.5
Full Changelog: v0.85.4...v0.85.5
v0.85.4
Full Changelog: v0.85.3...v0.85.4