Skip to content

0218: Ticket comments show author + role#227

Merged
rjdjohnston merged 2 commits intomainfrom
ticket/0218-comment-author-and-role
Mar 11, 2026
Merged

0218: Ticket comments show author + role#227
rjdjohnston merged 2 commits intomainfrom
ticket/0218-comment-author-and-role

Conversation

@jiggai-automation-bot
Copy link
Copy Markdown
Collaborator

Implements ticket #218.

  • Ticket comments now render the author identity and (when parseable) a role/title.
  • Parsing supports formats like and .
  • Adds unit tests for comment author parsing.

Verification:

  • Open any ticket with comments; headers should show plus a small role pill when present.

@jiggai/kitchen@0.3.10 lint
eslint

/home/control/clawkitchen/openclaw/index.ts
113:47 warning Refactor this function to reduce its Cognitive Complexity from 19 to the 15 allowed sonarjs/cognitive-complexity

/home/control/clawkitchen/src/app/api/cron/worker/route.ts
51:16 warning Refactor this function to reduce its Cognitive Complexity from 18 to the 15 allowed sonarjs/cognitive-complexity
132:23 warning Refactor this function to reduce its Cognitive Complexity from 47 to the 15 allowed sonarjs/cognitive-complexity

/home/control/clawkitchen/src/app/api/recipes/custom-team/route.ts
22:23 warning Refactor this function to reduce its Cognitive Complexity from 22 to the 15 allowed sonarjs/cognitive-complexity
163:14 warning Define a constant instead of duplicating this literal 5 times sonarjs/no-duplicate-string

/home/control/clawkitchen/src/app/api/recipes/local-agent-catalog/route.ts
64:10 warning Refactor this function to reduce its Cognitive Complexity from 21 to the 15 allowed sonarjs/cognitive-complexity
139:10 warning Refactor this function to reduce its Cognitive Complexity from 21 to the 15 allowed sonarjs/cognitive-complexity

/home/control/clawkitchen/src/app/api/teams/[teamId]/tickets/comment/route.ts
38:21 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex
54:23 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex
59:40 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex

/home/control/clawkitchen/src/app/api/teams/[teamId]/tickets/move-to-goals/route.ts
22:25 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex
24:23 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex

/home/control/clawkitchen/src/app/api/teams/memory/route.ts
173:68 warning Refactor this function to reduce its Cognitive Complexity from 19 to the 15 allowed sonarjs/cognitive-complexity

/home/control/clawkitchen/src/app/api/teams/workflow-runs/route.test.ts
5:38 warning '_args' is defined but never used @typescript-eslint/no-unused-vars
13:39 warning '_teamId' is defined but never used @typescript-eslint/no-unused-vars
13:56 warning '_workflowId' is defined but never used @typescript-eslint/no-unused-vars

/home/control/clawkitchen/src/app/api/teams/workflow-runs/route.ts
169:16 warning Refactor this function to reduce its Cognitive Complexity from 48 to the 45 allowed sonarjs/cognitive-complexity
354:23 warning Refactor this function to reduce its Cognitive Complexity from 89 to the 45 allowed sonarjs/cognitive-complexity

/home/control/clawkitchen/src/app/recipes/CreateCustomTeamModal.tsx
46:17 warning Refactor this function to reduce its Cognitive Complexity from 19 to the 15 allowed sonarjs/cognitive-complexity
139:25 warning '_unusedHaystack' is defined but never used @typescript-eslint/no-unused-vars

/home/control/clawkitchen/src/app/teams/[teamId]/runs/[workflowId]/[runId]/run-detail-client.tsx
23:9 warning The 'nodes' conditional could make the dependencies of useMemo Hook (at line 31) change on every render. To fix this, wrap the initialization of 'nodes' in its own useMemo() Hook react-hooks/exhaustive-deps

/home/control/clawkitchen/src/app/teams/[teamId]/team-editor/TeamMemoryTab.tsx
338:48 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional

/home/control/clawkitchen/src/app/teams/[teamId]/workflows/[workflowId]/workflows-editor-client.tsx
18:25 warning Refactor this function to reduce its Cognitive Complexity from 53 to the 45 allowed sonarjs/cognitive-complexity
197:6 warning React Hook useEffect has a missing dependency: 'bindingLabelAndTarget'. Either include it or remove the dependency array react-hooks/exhaustive-deps
849:56 warning Define a constant instead of duplicating this literal 4 times sonarjs/no-duplicate-string

/home/control/clawkitchen/src/app/teams/[teamId]/workflows/workflows-client.tsx
112:11 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
249:30 warning Refactor this function to reduce its Cognitive Complexity from 19 to the 15 allowed sonarjs/cognitive-complexity
418:65 warning Refactor this code to not nest functions more than 4 levels deep sonarjs/no-nested-functions
484:29 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional

/home/control/clawkitchen/src/app/tickets/[ticket]/TicketAssignControl.tsx
40:6 warning React Hook useEffect has a missing dependency: 'teamId'. Either include it or remove the dependency array react-hooks/exhaustive-deps

/home/control/clawkitchen/src/components/AppShell.tsx
113:45 warning Define a constant instead of duplicating this literal 6 times sonarjs/no-duplicate-string

/home/control/clawkitchen/src/lib/ticket-comments.ts
30:34 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex
56:17 warning Refactor this function to reduce its Cognitive Complexity from 19 to the 15 allowed sonarjs/cognitive-complexity
66:18 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex

/home/control/clawkitchen/src/lib/tickets.ts
41:87 warning Define a constant instead of duplicating this literal 4 times sonarjs/no-duplicate-string

/home/control/clawkitchen/src/lib/workflows/runs-storage.ts
41:23 warning Refactor this function to reduce its Cognitive Complexity from 17 to the 15 allowed sonarjs/cognitive-complexity
100:23 warning Refactor this function to reduce its Cognitive Complexity from 20 to the 15 allowed sonarjs/cognitive-complexity
131:27 warning Make sure the regex used here, which is vulnerable to super-linear runtime due to backtracking, cannot lead to denial of service sonarjs/slow-regex
220:13 warning Define a constant instead of duplicating this literal 4 times sonarjs/no-duplicate-string
241:23 warning Refactor this function to reduce its Cognitive Complexity from 59 to the 15 allowed sonarjs/cognitive-complexity
372:10 warning Refactor this function to reduce its Cognitive Complexity from 45 to the 15 allowed sonarjs/cognitive-complexity
398:11 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
400:13 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
402:15 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
404:17 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
410:21 warning Refactor this function to reduce its Cognitive Complexity from 20 to the 15 allowed sonarjs/cognitive-complexity
427:19 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
429:21 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
439:19 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional
466:13 warning Extract this nested ternary operation into an independent statement sonarjs/no-nested-conditional

/home/control/clawkitchen/src/lib/workflows/validate.ts
22:17 warning Refactor this function to reduce its Cognitive Complexity from 51 to the 45 allowed sonarjs/cognitive-complexity

✖ 51 problems (0 errors, 51 warnings) (warnings only),

@jiggai/kitchen@0.3.10 build
NODE_ENV=production next build

▲ Next.js 16.1.6 (Turbopack)

Creating an optimized production build ...
✓ Compiled successfully in 4.5s
Running TypeScript ...
Collecting page data using 7 workers ...
Generating static pages using 7 workers (0/52) ...
Generating static pages using 7 workers (13/52)
Generating static pages using 7 workers (26/52)
Generating static pages using 7 workers (39/52)
✓ Generating static pages using 7 workers (52/52) in 145.5ms
Finalizing page optimization ...

Route (app)
┌ ƒ /
├ ○ /_not-found
├ ƒ /agents/[agentId]
├ ƒ /api/agents
├ ƒ /api/agents/[id]
├ ƒ /api/agents/add
├ ƒ /api/agents/file
├ ƒ /api/agents/files
├ ƒ /api/agents/identity
├ ƒ /api/agents/skills
├ ƒ /api/agents/skills/install
├ ƒ /api/agents/update
├ ƒ /api/channels/bindings
├ ƒ /api/cron/delete
├ ƒ /api/cron/job
├ ƒ /api/cron/jobs
├ ƒ /api/cron/recipe-installed
├ ƒ /api/cron/worker
├ ƒ /api/gateway/restart
├ ƒ /api/goals
├ ƒ /api/goals/[id]
├ ƒ /api/goals/[id]/promote
├ ƒ /api/ids/check
├ ƒ /api/marketplace/recipes
├ ƒ /api/marketplace/recipes/[slug]
├ ƒ /api/recipes
├ ƒ /api/recipes/[id]
├ ƒ /api/recipes/clone
├ ƒ /api/recipes/custom-team
├ ƒ /api/recipes/delete
├ ƒ /api/recipes/local-agent-catalog
├ ƒ /api/recipes/team-agents
├ ƒ /api/scaffold
├ ƒ /api/settings/cron-installation
├ ƒ /api/skills/available
├ ƒ /api/swarms/start
├ ƒ /api/swarms/status
├ ƒ /api/teams/[teamId]/tickets/assign
├ ƒ /api/teams/[teamId]/tickets/assignees
├ ƒ /api/teams/[teamId]/tickets/comment
├ ƒ /api/teams/[teamId]/tickets/delete
├ ƒ /api/teams/[teamId]/tickets/move
├ ƒ /api/teams/[teamId]/tickets/move-to-goals
├ ƒ /api/teams/file
├ ƒ /api/teams/files
├ ƒ /api/teams/memory
├ ƒ /api/teams/meta
├ ƒ /api/teams/orchestrator
├ ƒ /api/teams/orchestrator/install
├ ƒ /api/teams/remove-team
├ ƒ /api/teams/skills
├ ƒ /api/teams/skills/install
├ ƒ /api/teams/workflow-runs
├ ƒ /api/teams/workflow-templates
├ ƒ /api/teams/workflows
├ ƒ /api/tickets/assign
├ ƒ /api/tickets/assignees
├ ƒ /api/tickets/move
├ ○ /channels
├ ƒ /cron-jobs
├ ○ /goals
├ ƒ /goals/[id]
├ ○ /goals/new
├ ○ /manifest.webmanifest
├ ƒ /recipes
├ ƒ /recipes/[id]
├ ƒ /runs
├ ○ /settings
├ ƒ /teams/[teamId]
├ ƒ /teams/[teamId]/runs
├ ƒ /teams/[teamId]/runs/[workflowId]/[runId]
├ ƒ /teams/[teamId]/tickets
├ ƒ /teams/[teamId]/tickets/[ticket]
├ ƒ /teams/[teamId]/workflows
├ ƒ /teams/[teamId]/workflows/[workflowId]
├ ƒ /tickets
└ ƒ /tickets/[ticket]

ƒ Proxy (Middleware)

○ (Static) prerendered as static content
ƒ (Dynamic) server-rendered on demand

@jiggai/kitchen@0.3.10 postbuild
node scripts/copy-standalone-static.mjs

[postbuild] Copied Next static assets:

  • from: /home/control/clawkitchen/.next/static
  • to: /home/control/clawkitchen/.next/standalone/.next/static ✅, ✅.

@rjdjohnston rjdjohnston merged commit 618c329 into main Mar 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants