Skip to content

feat(ui-web): remove the chat dock under a task node - #643

Merged
0xKT merged 2 commits into
mainfrom
feat/remove_task_node_chat_dock
Sep 22, 2026
Merged

0xKT merged 2 commits into
mainfrom
feat/remove_task_node_chat_dock

Conversation

@0xKT

@0xKT 0xKT commented Sep 22, 2026

Copy link
Copy Markdown
Member

Summary

The desk tasks pane drew an input box under every node of a stateful sub-agent that had a live handle ("Continue chatting with X"), sending into that instance's own lane through the same turn.send with target the sub-agent composer uses. The product no longer wants a second place to write to a sub-agent from the task view, so the dock is removed: the ChatDock component and its mount on the node card's context tab, its .tkdock styles, the gui.tasks.continue_with catalogue string (both locales, with the TUI's generated table regenerated) and the two comments that described the dock as pinned under the scrolling record. SendGlyph and the ds('subagents') seam leave this file only; both keep their other users. The desk's instance conversation pane keeps its own composer, and nothing under features/subagents changes.

Ratchets: no CSS, class-namespace or i18n gate named .tkdock, the dock's owner of the shared go class, or the removed key, so none was lowered; the shared-class licence comment for go lost the clause that cited the dock.

Type

  • Fix
  • Feature
  • Docs
  • CI / tooling
  • Refactor
  • Other

Verification

  • npm test --prefix ui-web -- src/features/tasks/ -- 196 passed. The one dock case is replaced by one asserting that a stateful agent's node with a live handle, on the context tab, renders its card with no .tkdock and no input; red against the previous TasksPage.tsx (the card still drew the dock).

  • npm test --prefix ui-web -- 192 files, 2571 passed, the contract and CSS gates included.

  • npm run type-check --prefix ui-web, npm run lint --prefix ui-web -- clean (the 4 pre-existing react-hooks warnings are in untouched files).

  • npm run gen:i18n --prefix ui-tui, npm run lint:i18n --prefix ui-tui ("generated catalogue is up to date"), npm run type-check --prefix ui-tui -- clean.

  • grep -rn "continue_with\|ChatDock\|tkdock" ui-web/src ui-tui/src raven docs-site/docs i18n -- only the new test's own assertion remains.

  • Relevant tests pass locally

  • Relevant lint / type checks pass locally

  • User-facing docs or screenshots are updated when needed

Risk

  • Security impact considered
  • Backward compatibility considered
  • Rollback path is clear for risky changes

User-visible: the input under a task node is gone; a reader who wants to talk to that sub-agent opens its conversation pane from the transcript instead. No wire or Python change. Rollback: revert the single commit.

Related Issues

N/A

The desk tasks pane offered an input under each node of a stateful
sub-agent with a live handle, sending into that instance's own lane. The
product no longer wants a second place to write to a sub-agent from the
task view, so the dock goes: the component, its mount on the context tab,
its styles, its catalogue string and the two comments that described it.
The desk's instance conversation pane keeps its own composer.

Co-authored-by: Claude (claude-fable-5-1) <noreply@anthropic.com>
@0xKT
0xKT requested a review from gloryfromca September 22, 2026 09:25

@gloryfromca gloryfromca left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No blockers; this can merge as far as I am concerned.

Reviewed the full github/main...HEAD diff and the surrounding task panel, the original dock implementation/history, remaining instanceSend callers, Web UI architecture terms, repository rules, backward compatibility, and the test replacement. The removal is complete and scoped: the component, mount, CSS, translation key, generated catalogue entry, imports, and stale class/layout documentation move together, while the sub-agent conversation composer remains intact. The replacement test asserts the requested absence for the formerly eligible stateful/live-handle case rather than weakening unrelated coverage.

Independent verification:

  • npm test --prefix ui-web -- src/features/tasks/ - 8 files, 196 tests passed
  • npm test --prefix ui-web - 192 files, 2571 tests passed
  • npm run type-check --prefix ui-web - passed
  • npm run lint --prefix ui-web - passed with 4 pre-existing warnings in untouched files
  • npm run lint:i18n --prefix ui-tui - generated catalogue is up to date
  • npm run type-check --prefix ui-tui - passed
  • git diff --check github/main...HEAD - passed

…_chat_dock

# Conflicts:
#	ui-web/src/features/tasks/TasksPage.tsx

@gloryfromca gloryfromca left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No blockers; this can merge as far as I am concerned.

Reviewed the revision delta and the resulting full github/main...HEAD diff. The only new branch commit merges current main; its TasksPage.tsx conflict resolution correctly preserves both the dock removal and main's new .tkbody tail-following behavior. I rechecked repository rules and Web UI architecture, affected callers/history, backward compatibility, and that the revised absence test does not weaken unrelated coverage. No prior finding threads exist to resolve.

Verification on this head:

  • npm test --prefix ui-web -- src/features/tasks/ - 8 files, 201 tests passed
  • npm test --prefix ui-web - 192 files, 2578 tests passed
  • npm run type-check --prefix ui-web - passed
  • npm run lint --prefix ui-web - passed with 4 pre-existing warnings in untouched files
  • npm run lint:i18n --prefix ui-tui - generated catalogue is up to date
  • npm run type-check --prefix ui-tui - passed
  • git diff --check github/main...HEAD - passed

@arelchan
arelchan self-requested a review September 22, 2026 10:44
@0xKT
0xKT merged commit a48c4ed into main Sep 22, 2026
23 checks passed
@0xKT
0xKT deleted the feat/remove_task_node_chat_dock branch September 22, 2026 10:45
LivXue pushed a commit that referenced this pull request Oct 12, 2026
## Summary

The desk tasks pane drew an input box under every node of a stateful
sub-agent that had a live handle ("Continue chatting with X"), sending
into that instance's own lane through the same `turn.send` with `target`
the sub-agent composer uses. The product no longer wants a second place
to write to a sub-agent from the task view, so the dock is removed: the
`ChatDock` component and its mount on the node card's context tab, its
`.tkdock` styles, the `gui.tasks.continue_with` catalogue string (both
locales, with the TUI's generated table regenerated) and the two
comments that described the dock as pinned under the scrolling record.
`SendGlyph` and the `ds('subagents')` seam leave this file only; both
keep their other users. The desk's instance conversation pane keeps its
own composer, and nothing under `features/subagents` changes.

Ratchets: no CSS, class-namespace or i18n gate named `.tkdock`, the
dock's owner of the shared `go` class, or the removed key, so none was
lowered; the shared-class licence comment for `go` lost the clause that
cited the dock.

## Type

- [ ] Fix
- [x] Feature
- [ ] Docs
- [ ] CI / tooling
- [ ] Refactor
- [ ] Other

## Verification

- `npm test --prefix ui-web -- src/features/tasks/` -- 196 passed. The
one dock case is replaced by one asserting that a stateful agent's node
with a live handle, on the context tab, renders its card with no
`.tkdock` and no input; red against the previous `TasksPage.tsx` (the
card still drew the dock).
- `npm test --prefix ui-web` -- 192 files, 2571 passed, the contract and
CSS gates included.
- `npm run type-check --prefix ui-web`, `npm run lint --prefix ui-web`
-- clean (the 4 pre-existing react-hooks warnings are in untouched
files).
- `npm run gen:i18n --prefix ui-tui`, `npm run lint:i18n --prefix
ui-tui` ("generated catalogue is up to date"), `npm run type-check
--prefix ui-tui` -- clean.
- `grep -rn "continue_with\|ChatDock\|tkdock" ui-web/src ui-tui/src
raven docs-site/docs i18n` -- only the new test's own assertion remains.

- [x] Relevant tests pass locally
- [x] Relevant lint / type checks pass locally
- [ ] User-facing docs or screenshots are updated when needed

## Risk

- [x] Security impact considered
- [x] Backward compatibility considered
- [x] Rollback path is clear for risky changes

User-visible: the input under a task node is gone; a reader who wants to
talk to that sub-agent opens its conversation pane from the transcript
instead. No wire or Python change. Rollback: revert the single commit.

## Related Issues

N/A

Co-authored-by: Claude (claude-fable-5-1) <noreply@anthropic.com>
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.

3 participants