fix(ci): restore deployment release gates

This commit is contained in:
2026-08-25 16:45:56 +02:00
parent 8ba87b68dc
commit 3e106d5262
11 changed files with 30 additions and 14 deletions
+4 -4
View File
@@ -323,9 +323,10 @@ def named_example(name):
examples = {
"filesystem": {
"evidence": {
"schema_version": 2,
"source": {
"type": "filesystem", "uri": "example/evidence",
"patterns": ["**/*.md"], "max_bytes": 10485760,
"patterns": ["curated/**/*.md"], "max_bytes": 10485760,
},
"policy": {"max_chunk_chars": 4000, "retain_published_generations": 3},
},
@@ -375,7 +376,7 @@ required_contract_phrases = [
"It is authoritative for workspace ID,\nname, description, and display order.",
"The descriptor at `<id>/workspace.yaml` must match the\ncatalog metadata exactly.",
"catalog-only entries are invalid and reject the complete candidate revision.",
"The API never writes `thoth-workspaces.yaml`,\n`<id>/workspace.yaml`, `<id>/schema/**`, or `<id>/evidence/**`.",
"The API and runtime never write\n`thoth-workspaces.yaml`, `<id>/workspace.yaml`, `<id>/schema/**`, or `<id>/evidence/**` in the\nauthoring repository.",
]
normalized_contract = normalize_space(contract)
for phrase in required_contract_phrases:
@@ -1862,10 +1863,9 @@ for required in (
ui = (root / "frontend/src/shell/WorkspaceManager.tsx").read_text()
for required in (
"Create a workspace repository",
"Update workspace repository",
"No workspace selection is required",
"Temporary files are deleted after the test",
"deletes temporary files when the check finishes",
):
if required not in ui:
raise SystemExit(f"Workspace management lacks required explanation: {required}")