feat(consistency): rebuild deterministic projection IDs
Assistant: codex Assistant-Model: gpt-5.6-sol Assistant-Session: 01a023c0-a0a3-7c03-b395-5a0d2757214d
This commit is contained in:
parent
cb1b028fd1
commit
697dd49390
6 changed files with 245 additions and 32 deletions
|
|
@ -7,6 +7,8 @@ the FastAPI ASGI app.
|
|||
"""
|
||||
from __future__ import annotations
|
||||
|
||||
import uuid
|
||||
|
||||
import pytest
|
||||
|
||||
|
||||
|
|
@ -139,6 +141,30 @@ class TestTopics:
|
|||
# ---------------------------------------------------------------------------
|
||||
|
||||
class TestWorkstreams:
|
||||
async def test_create_preserves_authoritative_projection_ids(self, client):
|
||||
await _create_domain(client)
|
||||
repo = await _create_repo(client, slug="projection-id-repo")
|
||||
workplan_id = str(uuid.uuid4())
|
||||
workplan = await _create_workplan(
|
||||
client,
|
||||
repo["id"],
|
||||
slug="projection-id-wp",
|
||||
id=workplan_id,
|
||||
)
|
||||
assert workplan["id"] == workplan_id
|
||||
|
||||
task_id = str(uuid.uuid4())
|
||||
response = await client.post(
|
||||
"/tasks/",
|
||||
json={
|
||||
"id": task_id,
|
||||
"workplan_id": workplan_id,
|
||||
"title": "File-backed task",
|
||||
},
|
||||
)
|
||||
assert response.status_code == 201, response.text
|
||||
assert response.json()["id"] == task_id
|
||||
|
||||
async def test_create_and_list_by_topic(self, client):
|
||||
await _create_domain(client)
|
||||
topic = await _create_topic(client)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue