generated from coulomb/repo-seed
generic source-to-infospace generator
This commit is contained in:
@@ -273,10 +273,12 @@ class WorkflowStageRecord:
|
||||
input_artifact_id: str
|
||||
output_artifact_id: str = ""
|
||||
message: str = ""
|
||||
provider: str = ""
|
||||
metadata: dict[str, Any] = field(default_factory=dict)
|
||||
|
||||
def to_dict(self) -> dict[str, Any]:
|
||||
data = asdict(self)
|
||||
return {key: value for key, value in data.items() if value != ""}
|
||||
return {key: value for key, value in data.items() if value not in ("", {}, [])}
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
@@ -442,6 +444,7 @@ def _execute_workflow(
|
||||
infospace.root,
|
||||
dry_run=False,
|
||||
provider=result.provider,
|
||||
provider_metadata=result.metadata,
|
||||
)
|
||||
outputs.append(output)
|
||||
stage_outputs[stage.id] = {
|
||||
@@ -458,6 +461,8 @@ def _execute_workflow(
|
||||
status="completed",
|
||||
input_artifact_id=input_record.artifact_id,
|
||||
output_artifact_id=output.artifact_id,
|
||||
provider=result.provider,
|
||||
metadata=result.metadata,
|
||||
)
|
||||
)
|
||||
elif stage.kind == "split_entities":
|
||||
@@ -645,6 +650,7 @@ def _resolve_output(
|
||||
*,
|
||||
dry_run: bool,
|
||||
provider: str = "",
|
||||
provider_metadata: dict[str, Any] | None = None,
|
||||
) -> WorkflowOutputRecord:
|
||||
if stage.output is None:
|
||||
raise InfospaceError(
|
||||
@@ -673,6 +679,11 @@ def _resolve_output(
|
||||
"stage_id": stage.id,
|
||||
"input_artifact_id": input_record.artifact_id,
|
||||
**({"provider": provider} if provider else {}),
|
||||
**(
|
||||
{"provider_metadata": provider_metadata}
|
||||
if provider_metadata
|
||||
else {}
|
||||
),
|
||||
},
|
||||
relationships=[
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user