feat(ack): add one-off delivery routing

This commit is contained in:
2026-08-01 15:25:15 +08:00
parent 5b0e41199d
commit e7efea28b4
22 changed files with 873 additions and 60 deletions
+42 -4
View File
@@ -204,7 +204,8 @@
"additionalProperties": false,
"properties": {
"developer": { "$ref": "#/definitions/modelTierAllowlist" },
"test": { "$ref": "#/definitions/modelTierAllowlist" }
"test": { "$ref": "#/definitions/modelTierAllowlist" },
"operator": { "$ref": "#/definitions/modelTierAllowlist" }
}
},
"modelAllowlist": {
@@ -229,7 +230,7 @@
"properties": {
"role": {
"type": "string",
"enum": ["developer", "test"]
"enum": ["developer", "test", "operator"]
},
"cli": {
"type": "string",
@@ -259,6 +260,7 @@
"properties": {
"developer": { "$ref": "#/definitions/profileId" },
"test": { "$ref": "#/definitions/profileId" },
"operator": { "$ref": "#/definitions/profileId" },
"developerUpgraded": { "$ref": "#/definitions/profileId" }
}
},
@@ -437,7 +439,10 @@
},
"environmentPolicy": {
"type": "string",
"const": "per-cli-allowlist-v1"
"enum": [
"per-cli-allowlist-v1",
"per-cli-plus-operator-publish-v1"
]
}
}
},
@@ -546,7 +551,7 @@
},
"role": {
"type": "string",
"enum": ["developer", "test"]
"enum": ["developer", "test", "operator"]
}
}
},
@@ -909,6 +914,22 @@
}
]
},
"deliveryOperation": {
"type": "object",
"required": ["skill", "request"],
"additionalProperties": false,
"properties": {
"skill": {
"type": "string",
"enum": [
"manage-release",
"deb-publisher",
"publish-docker-image"
]
},
"request": { "type": "string", "minLength": 1, "pattern": "\\S" }
}
},
"task": {
"type": "object",
"required": ["id", "title", "status"],
@@ -944,6 +965,7 @@
"stepsToReproduce": { "type": "array", "items": { "type": "string" } },
"expected": { "type": "string" },
"actual": { "type": "string" },
"operation": { "$ref": "#/definitions/deliveryOperation" },
"evidence": { "type": "object" },
"verification": { "type": "object" },
"dispatch": {
@@ -955,6 +977,7 @@
"worker": { "type": ["string", "null"] },
"developer": { "$ref": "#/definitions/roleDispatch" },
"test": { "$ref": "#/definitions/roleDispatch" },
"operator": { "$ref": "#/definitions/roleDispatch" },
"rounds": {
"type": "array",
"items": { "$ref": "#/definitions/round" }
@@ -992,6 +1015,21 @@
},
"required": ["resolution"]
}
},
{
"if": {
"properties": { "type": { "const": "delivery-operation" } },
"required": ["type"]
},
"then": {
"required": ["operation", "dispatch"],
"properties": {
"dispatch": {
"type": "object",
"required": ["operator"]
}
}
}
}
]
}