feat(ack): add Feishu bug review approval gate
This commit is contained in:
@@ -171,6 +171,10 @@
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"provider": { "const": "feishu-base" },
|
||||
"workflow": {
|
||||
"type": "string",
|
||||
"enum": ["read-only-v1", "reviewed-writeback-v1"]
|
||||
},
|
||||
"profile": { "type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$" },
|
||||
"baseToken": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"tableId": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
@@ -184,13 +188,27 @@
|
||||
"actual": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"expected": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"stepsToReproduce": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"fixLogic": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"acceptance": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"priority": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"attachments": { "type": "string", "minLength": 1, "pattern": "^\\S+$" },
|
||||
"updatedAt": { "type": "string", "minLength": 1, "pattern": "^\\S+$" }
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": { "workflow": { "const": "reviewed-writeback-v1" } },
|
||||
"required": ["workflow"]
|
||||
},
|
||||
"then": {
|
||||
"properties": {
|
||||
"fields": { "required": ["fixLogic"] }
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"feishuTaskSource": {
|
||||
"type": "object",
|
||||
@@ -198,6 +216,10 @@
|
||||
"additionalProperties": false,
|
||||
"properties": {
|
||||
"kind": { "const": "feishu-base" },
|
||||
"workflow": {
|
||||
"type": "string",
|
||||
"enum": ["read-only-v1", "reviewed-writeback-v1"]
|
||||
},
|
||||
"ref": {
|
||||
"type": "string",
|
||||
"pattern": "^feishu-base:sha256:[0-9a-f]{64}$"
|
||||
@@ -206,8 +228,21 @@
|
||||
"type": "string",
|
||||
"pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,255}$"
|
||||
},
|
||||
"updatedAt": { "type": "string", "minLength": 1, "pattern": "\\S" }
|
||||
}
|
||||
"updatedAt": { "type": "string", "minLength": 1, "pattern": "\\S" },
|
||||
"approvedRevision": { "$ref": "#/definitions/sha256" },
|
||||
"approvedPayloadHash": { "$ref": "#/definitions/sha256" }
|
||||
},
|
||||
"allOf": [
|
||||
{
|
||||
"if": {
|
||||
"properties": { "workflow": { "const": "reviewed-writeback-v1" } },
|
||||
"required": ["workflow"]
|
||||
},
|
||||
"then": {
|
||||
"required": ["approvedRevision", "approvedPayloadHash"]
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"profileId": {
|
||||
"type": "string",
|
||||
@@ -996,6 +1031,12 @@
|
||||
}
|
||||
},
|
||||
"description": { "type": "string" },
|
||||
"fixLogic": { "type": "string", "minLength": 1, "pattern": "\\S" },
|
||||
"acceptanceCriteria": {
|
||||
"type": "array",
|
||||
"minItems": 1,
|
||||
"items": { "type": "string", "minLength": 1, "pattern": "\\S" }
|
||||
},
|
||||
"stepsToReproduce": { "type": "array", "items": { "type": "string" } },
|
||||
"expected": { "type": "string" },
|
||||
"actual": { "type": "string" },
|
||||
|
||||
Reference in New Issue
Block a user