Merge pull request 'fix(api): שינוי-שם תיק מחזיר 500 — ניתוב Paperclip דרך שער-הפלטפורמה (INV-G12)' (#249) from worktree-fix-case-update-port into main
All checks were successful
Build & Deploy / build-and-deploy (push) Successful in 17s
G12 Leak-Guard / leak-guard (push) Successful in 3s

This commit was merged in pull request #249.
This commit is contained in:
2026-06-14 08:38:22 +00:00
2 changed files with 14 additions and 3 deletions

View File

@@ -28,6 +28,8 @@ from __future__ import annotations
# ── the Paperclip shell — imported ONLY here (the Port is the single seam) ── # ── the Paperclip shell — imported ONLY here (the Port is the single seam) ──
from web.paperclip_api import ( from web.paperclip_api import (
emit_case_status_webhook, emit_case_status_webhook,
emit_export_complete_webhook,
emit_missing_precedent_webhook,
pc_request, pc_request,
require_paperclip_db_url, require_paperclip_db_url,
) )
@@ -52,6 +54,7 @@ from web.paperclip_client import (
reset_agent_session as pc_reset_agent_session, reset_agent_session as pc_reset_agent_session,
respond_to_interaction as pc_respond_to_interaction, respond_to_interaction as pc_respond_to_interaction,
restore_project as pc_restore_project, restore_project as pc_restore_project,
update_project_name as pc_update_project_name,
wake_analyst_for_appraiser_facts as pc_wake_analyst_for_appraiser_facts, wake_analyst_for_appraiser_facts as pc_wake_analyst_for_appraiser_facts,
wake_ceo_agent as pc_wake_ceo, wake_ceo_agent as pc_wake_ceo,
wake_ceo_for_feedback_fold as pc_wake_ceo_for_feedback_fold, wake_ceo_for_feedback_fold as pc_wake_ceo_for_feedback_fold,
@@ -63,6 +66,7 @@ from web.paperclip_client import (
archive_case_project = pc_archive_project archive_case_project = pc_archive_project
restore_case_project = pc_restore_project restore_case_project = pc_restore_project
create_case_project = pc_create_project create_case_project = pc_create_project
rename_case_project = pc_update_project_name
notify_case_status = emit_case_status_webhook notify_case_status = emit_case_status_webhook
__all__ = [ __all__ = [
@@ -75,11 +79,15 @@ __all__ = [
"archive_case_project", "archive_case_project",
"restore_case_project", "restore_case_project",
"create_case_project", "create_case_project",
"rename_case_project",
"notify_case_status", "notify_case_status",
"emit_case_status_webhook", "emit_case_status_webhook",
"emit_export_complete_webhook",
"emit_missing_precedent_webhook",
"pc_archive_project", "pc_archive_project",
"pc_restore_project", "pc_restore_project",
"pc_create_project", "pc_create_project",
"pc_update_project_name",
# issues / workflow # issues / workflow
"pc_create_workflow_issue", "pc_create_workflow_issue",
"pc_get_case_issues", "pc_get_case_issues",

View File

@@ -52,6 +52,8 @@ from web.progress_store import ProgressStore
from web.agent_platform_port import ( from web.agent_platform_port import (
PAPERCLIP_COMPANIES, PAPERCLIP_COMPANIES,
emit_case_status_webhook, emit_case_status_webhook,
emit_export_complete_webhook,
emit_missing_precedent_webhook,
get_project_url, get_project_url,
pc_accept_interaction, pc_accept_interaction,
pc_archive_project, pc_archive_project,
@@ -73,6 +75,7 @@ from web.agent_platform_port import (
pc_respond_to_interaction, pc_respond_to_interaction,
pc_restore_project, pc_restore_project,
pc_wake_analyst_for_appraiser_facts, pc_wake_analyst_for_appraiser_facts,
rename_case_project,
pc_wake_ceo, pc_wake_ceo,
pc_wake_ceo_for_feedback_fold, pc_wake_ceo_for_feedback_fold,
pc_wake_curator_for_final, pc_wake_curator_for_final,
@@ -2093,7 +2096,7 @@ async def api_case_update(case_number: str, req: CaseUpdateRequest, background_t
old_title = (existing or {}).get("title", "") old_title = (existing or {}).get("title", "")
if req.title and req.title != old_title: if req.title and req.title != old_title:
background_tasks.add_task( background_tasks.add_task(
paperclip_client.update_project_name, rename_case_project,
case_number=case_number, case_number=case_number,
new_title=req.title, new_title=req.title,
) )
@@ -3816,7 +3819,7 @@ async def api_export_docx(case_number: str, background_tasks: BackgroundTasks):
else None else None
) )
background_tasks.add_task( background_tasks.add_task(
paperclip_api.emit_export_complete_webhook, emit_export_complete_webhook,
case_number=case_number, case_number=case_number,
docx_filename=docx_filename, docx_filename=docx_filename,
company_id=company_id, company_id=company_id,
@@ -7544,7 +7547,7 @@ async def missing_precedent_create(
# Trigger plugin to ask Daphna via askUserQuestions interaction. # Trigger plugin to ask Daphna via askUserQuestions interaction.
if case_number_for_webhook and row.get("id"): if case_number_for_webhook and row.get("id"):
background_tasks.add_task( background_tasks.add_task(
paperclip_api.emit_missing_precedent_webhook, emit_missing_precedent_webhook,
case_number=case_number_for_webhook, case_number=case_number_for_webhook,
missing_precedent_id=str(row["id"]), missing_precedent_id=str(row["id"]),
citation=req.citation.strip(), citation=req.citation.strip(),