From b287d759a159e5d5163115673080192c57559b9d Mon Sep 17 00:00:00 2001 From: PeninsulaInd Date: Mon, 30 Mar 2026 10:26:32 -0500 Subject: [PATCH] Fix ClickUp field name: Customer -> Client The ClickUp dropdown is named "Client", not "Customer". Updated field lookups, prompt labels, README docs, and all tests. Co-Authored-By: Claude Opus 4.6 (1M context) --- clickup_runner/README.md | 2 +- clickup_runner/__main__.py | 2 +- clickup_runner/claude_runner.py | 6 +++--- tests/test_clickup_runner/test_autocora.py | 2 +- tests/test_clickup_runner/test_claude_runner.py | 6 +++--- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/clickup_runner/README.md b/clickup_runner/README.md index 831ba26..7ecfe99 100644 --- a/clickup_runner/README.md +++ b/clickup_runner/README.md @@ -86,7 +86,7 @@ These must exist in your ClickUp space: | Work Category | Dropdown | Task type (Content Creation, Press Release, etc.) | | Keyword | Text | SEO keyword for Cora analysis (required for run_cora stage) | | IMSURL | URL | Target money-site URL (used in prompts and Cora jobs) | -| Customer | Dropdown | Client name (used for NAS file organization) | +| Client | Dropdown | Client name (used for NAS file organization and prompts) | ## Skill Map diff --git a/clickup_runner/__main__.py b/clickup_runner/__main__.py index e1597ec..0e2780b 100644 --- a/clickup_runner/__main__.py +++ b/clickup_runner/__main__.py @@ -493,7 +493,7 @@ def _dispatch_claude( uploaded += 1 # 7. Copy to NAS (best-effort) - customer = task.get_field_value("Customer") or "" + customer = task.get_field_value("Client") or "" if customer and cfg.nas.generated_dir: copy_to_nas(result.output_files, customer, cfg.nas.generated_dir) diff --git a/clickup_runner/claude_runner.py b/clickup_runner/claude_runner.py index 6f5258f..4e33912 100644 --- a/clickup_runner/claude_runner.py +++ b/clickup_runner/claude_runner.py @@ -58,9 +58,9 @@ def build_prompt( "Task: %s" % task.name, ] - customer = task.get_field_value("Customer") - if customer: - ctx_lines.append("Customer: %s" % customer) + client_name = task.get_field_value("Client") + if client_name: + ctx_lines.append("Client: %s" % client_name) ims_url = task.get_field_value("IMSURL") if ims_url: diff --git a/tests/test_clickup_runner/test_autocora.py b/tests/test_clickup_runner/test_autocora.py index 2e1f9d5..5a33d8c 100644 --- a/tests/test_clickup_runner/test_autocora.py +++ b/tests/test_clickup_runner/test_autocora.py @@ -35,7 +35,7 @@ def _make_task(**overrides) -> ClickUpTask: "url": "https://app.clickup.com/t/task_abc", "list_id": "list_1", "custom_fields": { - "Customer": "Acme Corp", + "Client": "Acme Corp", "Keyword": "CNC Machining", "IMSURL": "https://acme.com/cnc-machining", "Delegate to Claude": True, diff --git a/tests/test_clickup_runner/test_claude_runner.py b/tests/test_clickup_runner/test_claude_runner.py index 081dce7..0fdc1ce 100644 --- a/tests/test_clickup_runner/test_claude_runner.py +++ b/tests/test_clickup_runner/test_claude_runner.py @@ -35,7 +35,7 @@ def _make_task(**overrides) -> ClickUpTask: "url": "https://app.clickup.com/t/task_123", "list_id": "list_1", "custom_fields": { - "Customer": "Acme Corp", + "Client": "Acme Corp", "IMSURL": "https://acme.com/widgets", }, } @@ -84,7 +84,7 @@ class TestBuildPrompt: task = _make_task() route = _make_route() prompt = build_prompt(task, route, "skill content") - assert "Customer: Acme Corp" in prompt + assert "Client: Acme Corp" in prompt def test_includes_target_url(self): task = _make_task() @@ -122,7 +122,7 @@ class TestBuildPrompt: task = _make_task(custom_fields={}) route = _make_route() prompt = build_prompt(task, route, "skill") - assert "Customer:" not in prompt + assert "Client:" not in prompt def test_output_instructions_present(self): task = _make_task()