Skip to content

feat(catalog): add reusable catalog - #362

Draft
mrsimonemms wants to merge 1 commit into
mainfrom
sje/catalog
Draft

feat(catalog): add reusable catalog#362
mrsimonemms wants to merge 1 commit into
mainfrom
sje/catalog

Conversation

@mrsimonemms

Copy link
Copy Markdown
Collaborator

Description

Related Issue(s)

Fixes #316

How to test

@github-actions

github-actions Bot commented Apr 13, 2026

Copy link
Copy Markdown

🚀 Preview deployed
🔗 https://zigflow.dev/preview/sje-catalog

@github-actions

github-actions Bot commented Apr 13, 2026

Copy link
Copy Markdown

Codex PR Review

Findings

High: The PR does not compile after changing the loader signatures. LoadFromBytes now returns three values, but production code still expects two in the MCP validator, and cmd/run/workflows.go assigns reg without using it. Tests also still use the old signature. Update all call sites to handle the registry return, or assign it to _ where it is genuinely unused.
loader.go, cmd/run/workflows.go, pkg/mcp/validate_workflow.go

High: call: catalog is accepted by the schema and routed through the task factory, but NewCallCatalogTaskBuilder returns nil, nil. The enclosing DoTaskBuilder then calls builder.PostLoad() or builder.Build(), which will panic for any workflow using the new task type instead of failing explicitly or executing correctly. Implement a real TaskBuilder for catalogue calls, or reject call: catalog with a clear unsupported error until it is implemented.
pkg/zigflow/tasks/task_builder_call_catalog.go, pkg/zigflow/tasks/task_builder.go, pkg/zigflow/tasks/task_builder_do.go

Medium: The checked-in JSON schema for CallCatalog is inconsistent with the Go schema and YAML schema. It requires name, but does not declare name as an evaluated property, and it does not require call. With unevaluatedProperties: false, schema consumers can reject valid catalogue tasks or accept invalid shapes. Regenerate docs/static/schema.json from the same source as schema.yaml and add a test that the published schemas validate the new example.
docs/static/schema.json

I could not run the full test suite in this sandbox because the configured Go 1.26.3 toolchain needed a network download, and network access is restricted.

@mrsimonemms
mrsimonemms force-pushed the sje/catalog branch 3 times, most recently from 5648ceb to 1e30303 Compare April 14, 2026 18:49
@mrsimonemms
mrsimonemms deleted the branch main May 30, 2026 20:23
@mrsimonemms mrsimonemms reopened this May 30, 2026
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.

Feature request: Parameterized use.catalog for reusable workflow components across YAML files

1 participant