{
	"$schema": "http://json-schema.org/draft-07/schema#",
	"$id": "https://raw.githubusercontent.com/qlik-oss/schemas/refs/heads/main/qtcp/task.transformationdataflow.schema.json",
	"title": "Task transformation data flow Configuration",
	"description": "Schema for task transformation data flow configuration",
	"type": "object",
	"properties": {
		"modifiedByAi": { "$ref": "#/$defs/ModifiedByAi" },
		"name": {
			"type": "string",
			"description": "Transformation flow name",
			"examples": ["myflow1"]
		},
		"description": {
			"type": "string",
			"description": "Transformation flow description"
		},
		"modelVersion": {
			"type": "string",
			"description": "Model version"
		},
		"context": {
			"type": "object",
			"description": "Model context",
			"properties": {
				"projectId": {
					"type": "string",
					"description": "Project identifier",
					"examples": ["{{ref(project.current.projectId)}}"]
				},
				"dataAppId": {
					"type": "string",
					"description": "source task",
					"examples": ["transform_flow_3-iqus"]
				}
			},
			"required": [],
			"additionalProperties": false
		},
		"graph": {
			"type": "string",
			"description": "graph data, json format"
		}
	},
	"required": [],
	"$defs": {
		"ModifiedByAi": {
			"type": "object",
			"description": "Metadata describing the latest AI modification",
			"required": ["lastUpdated", "model"],
			"properties": {
				"lastUpdated": { "type": "string", "format": "date-time", "pattern": "^\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}\\.\\d{3}Z$", "description": "UTC timestamp of the latest AI modification" },
				"model": { "type": "string", "minLength": 1, "description": "AI model that made the latest modification" }
			},
			"additionalProperties": false
		}
	},
	"additionalProperties": false
}
