declarative Markdown workflow layer

This commit is contained in:
2026-05-04 12:35:59 +02:00
parent 33fa602fe5
commit 0bc63aab9f
19 changed files with 1854 additions and 11 deletions

View File

@@ -11,7 +11,10 @@ def builtin_extension_registry() -> ExtensionRegistry:
"""Return descriptors for built-in Markitect extensions."""
registry = default_query_engine_registry().extension_registry()
for descriptor in _processor_descriptors() + [_local_sqlite_backend_descriptor()]:
for descriptor in _processor_descriptors() + [
_local_sqlite_backend_descriptor(),
_workflow_engine_descriptor(),
]:
registry.register(descriptor)
return registry
@@ -90,3 +93,30 @@ def _local_sqlite_backend_descriptor() -> ExtensionDescriptor:
docs=["docs/local-index-backend.md", "docs/backend-fabric.md"],
examples=["examples/backends/local-sqlite-backend.md"],
)
def _workflow_engine_descriptor() -> ExtensionDescriptor:
return ExtensionDescriptor(
id="workflow.markdown-dataflow",
kind="workflow-engine",
summary="Declarative Markdown dataflow workflow engine.",
capabilities=[
ProcessingCapability(id="workflow", kind="execute"),
ProcessingCapability(id="markdown", kind="read"),
ProcessingCapability(id="templates", kind="execute"),
ProcessingCapability(id="provenance", kind="emit"),
],
safety={
"reads_files": True,
"writes_output_files": True,
"network": False,
"assisted_generation": "adapter-only",
},
input_contract="Markdown/YAML workflow definition",
output_contract="WorkflowRunResult",
diagnostics_namespace="workflow",
provenance_prefix="workflow",
cli={"commands": ["mkt workflow inspect", "mkt workflow plan", "mkt workflow run"]},
docs=["docs/workflow-definition-standard.md"],
examples=["examples/workflows/adr-release-notes.workflow.md"],
)