修改问题

This commit is contained in:
strepsiades
2026-04-01 17:04:26 +08:00
parent 7c49df94fc
commit 9a3a34c58b
10 changed files with 119 additions and 29 deletions
@@ -315,14 +315,19 @@ class ProjectDetailApiHandler(BaseApiHandler):
existing_by_pair = self._find_existing_by_project_key(project_id=project_id, key=key)
if existing_by_pair is not None:
if loaded_data_id and existing_by_pair.data_id != loaded_data_id:
with existing_by_pair.allow_core_state_write("project_detail_pair_rebind"):
existing_by_pair.data_id = loaded_data_id
existing_by_pair.set_data(data)
existing_by_pair.set_origin_data(data)
if project_id:
existing_by_pair.context["project_id"] = project_id
return existing_by_pair
if loaded_data_id and existing_by_pair.data_id == loaded_data_id:
existing_by_pair.set_data(data)
existing_by_pair.set_origin_data(data)
if project_id:
existing_by_pair.context["project_id"] = project_id
return existing_by_pair
existing_data_id = existing_by_pair.data_id or "<empty>"
loaded_data_id_text = loaded_data_id or "<empty>"
raise RuntimeError(
"project_detail_data load conflict: "
f"project_id={project_id}, key={key}, existing_data_id={existing_data_id}, loaded_data_id={loaded_data_id_text}"
)
node = self._create_basic_node(data, depend_ids=[])
if project_id: