Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 6 additions & 1 deletion api/oss/src/core/workflows/dtos.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

from pydantic import (
BaseModel,
ConfigDict,
Field,
)

Expand Down Expand Up @@ -54,9 +55,13 @@
WorkflowServiceStreamResponse, # noqa: F401
#
JsonSchemas, # noqa: F401
WorkflowRevisionData,
WorkflowRevisionData as BaseWorkflowRevisionData,
)


class WorkflowRevisionData(BaseWorkflowRevisionData):
model_config = ConfigDict(extra="forbid")
Comment on lines +62 to +63

# aliases ----------------------------------------------------------------------


Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -177,6 +177,35 @@ def test_commit_application_revision_generates_slug_when_missing(self, authed_ap
== body["application_revision"]["id"]
)

def test_commit_application_revision_rejects_unknown_data_field(self, authed_api):
"""Issue #4315: before fix unknown data was dropped silently; now 422 on ag_config."""
application, variant = _create_application_with_variant(
authed_api, marker=uuid4().hex[:8]
)

response = authed_api(
"POST",
"/applications/revisions/commit",
json={
"application_revision_commit": {
"application_id": application["id"],
"application_variant_id": variant["id"],
"data": {
"ag_config": {
"prompt": {
"messages": [
{"role": "system", "content": "hi"}
]
}
}
},
}
},
)

assert response.status_code == 422
assert "ag_config" in str(response.json()["detail"])

def test_query_applications_excludes_evaluators_by_default(self, authed_api):
marker = uuid4().hex[:8]
application, _variant = _create_application_with_variant(
Expand Down
2 changes: 2 additions & 0 deletions sdks/python/agenta/sdk/models/workflows.py
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,8 @@ class WorkflowQueryFlags(BaseModel):


class WorkflowRevisionData(BaseModel):
model_config = ConfigDict(extra="forbid")

uri: Optional[str] = None

url: Optional[str] = None
Expand Down