Skip to content
This repository was archived by the owner on Mar 26, 2026. It is now read-only.

fix(ui): TASK-139/140 — task panel width, markdown newlines, PR link#298

Merged
jsell-rh merged 7 commits intomainfrom
fix/task-139-140-panel-ux
Mar 25, 2026
Merged

fix(ui): TASK-139/140 — task panel width, markdown newlines, PR link#298
jsell-rh merged 7 commits intomainfrom
fix/task-139-140-panel-ux

Conversation

@jsell-rh
Copy link
Copy Markdown
Owner

@jsell-rh jsell-rh commented Mar 25, 2026

Summary

Closes #293
Closes #294

Fixes two issues reported in GitHub issues #293 and #294 for the task right panel.

TASK-139 — Panel width + markdown newlines (#293)

  • Widen SheetContent from 480/540px to 560/680px — more room for descriptions, comments, and metadata
  • Fix scroll structure: remove overflow-y-auto from outer SheetContent so the sticky header stays pinned while the body scrolls independently via flex-1 overflow-y-auto
  • Add leading-relaxed to description div for better line-height readability with multi-line content

TASK-140 — PR link field not clickable (#294)

  • buildPrUrl now handles github.com/... and gitlab.com/... URLs that are missing the https:// prefix
  • Improved PR number extraction regex handles more input formats (PR #42, PR-42, bare 42)
  • Fallback display for unresolvable linked_pr (no repo_url on agents) changed from muted plain text to a styled <code> badge with a tooltip explaining what's needed to make it a link

Test plan

  • Open a task detail panel — panel should be noticeably wider (560px / 680px)
  • Task with a multiline description — lines should have proper spacing with leading-relaxed
  • Task with linked_pr = "#123" and no agent repo_url — shows styled code badge with tooltip, not just gray text
  • Task with linked_pr = "https://github.com/..." — still renders as clickable link
  • Task with linked_pr = "github.com/org/repo/pull/42" (no https prefix) — now renders as clickable link
  • go test -race ./internal/coordinator/ — passes
  • npm run build — clean build, no TS errors

🤖 Generated with Claude Code

jsell-rh and others added 7 commits March 23, 2026 15:26
…-setup.sh

Aligns scripts with CLAUDE.md docs (PR #290). MCP server name changed from
boss-dev to odis-dev in the generated JSON config, allowed tools list, and
output messages. BOSS_API_TOKEN/BOSS_MCP_URL env vars kept as fallbacks for
backward compatibility (prefer ODIS_API_TOKEN/ODIS_MCP_URL going forward).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…our Conversations

Root cause: both 'boss' (legacy) and 'operator' agents have agent_type='human' in the
DB. operatorName computed returned whichever was found first via Object.entries, which
is insertion-order. In spaces where 'boss' was created first, operatorName='boss'.

Consequences when operatorName='boss' but messages use 'operator':
- Conversations with 'operator' participant went to Agent Conversations section
- composeRecipient was null for those conversations (no compose box shown)
- Unread acks used wrong agent name

Fix: collect ALL human agents into humanAgentNames Set. Use it for:
- isOperatorConversation: any participant that is a human agent
- composeRecipient: any participant that is NOT a human agent
- unreadCount / ackOperatorMessages: any human-agent recipient
- operatorName: prefer 'operator' (canonical) over legacy 'boss'

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…tion threads

When agents use different capitalizations (e.g. "CEO" vs "ceo"), messages were stored
with the raw sender name, creating separate conversation threads in the UI for what
should be a single conversation.

Both handleAgentMessage (HTTP) and send_message (MCP tool) now call resolveAgentName
on the sender after the space is loaded, mapping to the canonical stored name if the
sender is a known agent. Unknown senders keep their original name unchanged.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Address remaining boss feedback after PR #134 (CLOSED):

- Remove [?BOSS] tag syntax from docs/AGENT_PROTOCOL.md questions field
  example and description; replace with plain language
- Replace wall-clock status cadence with milestone-based language in
  AGENT_PROTOCOL.md (Pattern A work loop + non-tmux checklist)
- messaging-protocol.md: remove 'manager can explicitly forbid' qualifier
  from peer-to-peer section; peer messaging is always allowed, no
  authorization needed
- messaging-protocol.md: reframe escalation to walk up the chain rather
  than hardcoding a 'boss' message target with 30-minute wall-time rule
- organizational-model.md: remove 'manager can restrict' qualifier from
  information-flow principle; direct messaging is always allowed
- ignition-prompts.md: remove 'boss agent channel for boss-level decisions'
  from hierarchy section; add blocked task status to blocker flow
- ignition-prompts.md: soften org chart note — position set by spawning
  agent, not a warning about org instability
- team-formation.md: remove time-based threshold (~30 min); replace with
  action-based criteria (multiple focused actions = non-trivial); strengthen
  the default-to-team recommendation

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
TASK-139:
- Widen SheetContent from 480/540px to 560/680px for more readable content
- Fix scroll structure: remove outer overflow-y-auto so header stays pinned
  while body scrolls independently (flex-1 overflow-y-auto on body)
- Add leading-relaxed to description for better line-height readability

TASK-140:
- buildPrUrl now handles github.com/gitlab.com URLs missing https:// prefix
- Improved PR number extraction regex handles more formats (PR #42, PR-42)
- Fallback display for unresolvable linked_pr changed from muted plain text
  to a styled code badge with tooltip explaining missing repo_url config

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@jsell-rh jsell-rh merged commit 3da1dcf into main Mar 25, 2026
3 checks passed
@jsell-rh jsell-rh deleted the fix/task-139-140-panel-ux branch March 25, 2026 19:36
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Link to task Readability of task right side panel

1 participant