Skip to content

[ZEPPELIN-6743] Mount an opt-in AI Assistant shell in the notebook sidebar - #5565

Open
voidmatcha wants to merge 5 commits into
apache:branch-voidmatcha-assistant-contracts-tempfrom
voidmatcha:voidmatcha/assistant-sidebar-shell
Open

voidmatcha wants to merge 5 commits into
apache:branch-voidmatcha-assistant-contracts-tempfrom
voidmatcha:voidmatcha/assistant-sidebar-shell

Conversation

@voidmatcha

@voidmatcha voidmatcha commented Oct 10, 2026 •

Copy link
Copy Markdown
Member

What is this PR for?

Add an opt-in AI Assistant button and empty panel shell to the notebook sidebar. With ?reactAssistant=true, the Angular notebook mounts the React shell, coordinates it with the file tree and table of contents, and shares the sidebar width for resizing. The panel closes when the active note changes and shows a fallback if the React remote fails to load.

This establishes the notebook mount point for later conversation UI work. Conversation components, server transport, and message handling are outside this PR.

This PR depends on #5558 and #5561. Its temporary base contains those changes so the shell can be reviewed separately.

What type of PR is it?

Feature

Todos

What is the Jira issue?

ZEPPELIN-6743

How should this be tested?

Run from zeppelin-web-angular/:

npm run build-project:sdk
npm run typecheck:react
npm --prefix projects/zeppelin-react test -- src/pages/AssistantWorkspace.spec.tsx
npm run test:shell -- src/app/pages/workspace/notebook/assistant src/app/pages/workspace/notebook/sidebar/sidebar.component.spec.ts src/app/services/react-feature.service.spec.ts
npm run lint
npm run build:react

In an authenticated notebook, open ?reactAssistant=true and check opening, closing, resizing, switching sidebar sections, and switching notes. Confirm that the button is absent without the flag and in view-only and revision views.

Screenshots (if appropriate)

N/A

Questions:

  • Does the license files need to update? No
  • Is there breaking changes for older versions? No
  • Does this needs documentation? No

@voidmatcha

voidmatcha commented Oct 10, 2026 •

Copy link
Copy Markdown
Member Author

This PR adds the opt-in Assistant sidebar shell and its Angular/React mount point. Conversation UI and server transport are outside this diff.

The current diff is +924/-7 across 21 files. Excluding 299 lines in *.spec.* tests, including the notebook E2E spec, the review diff is +625/-7. There is no lockfile change.

The SDK build, React typecheck, focused React and Angular tests, lint, and React production build pass locally. Webpack reports an asset-size warning.

This depends on #5558 and #5561. The temporary base contains those prerequisites so reviews can proceed now. After they merge, I will rebase this branch onto the latest master, retarget the PR to master, and confirm CI before merging.

@voidmatcha
voidmatcha force-pushed the voidmatcha/assistant-sidebar-shell branch 2 times, most recently from aee705e to 654d828 Compare October 11, 2026 04:28
The opt-in Assistant host handles panel visibility and error states. Include it in the page coverage registry so the reporter tracks its currently untested browser flow.

Confidence: high
Scope-risk: none
Not-tested: Full browser E2E and GitHub CI
Cover the flagged notebook shell through its visible sidebar controls.
Create and remove a disposable notebook for each test run.

Confidence: high
Scope-risk: none
Not-tested: full E2E suite and runtime fault injection
@voidmatcha
voidmatcha force-pushed the branch-voidmatcha-assistant-contracts-temp branch from 699239b to 3e95adf Compare October 11, 2026 11:30
@voidmatcha
voidmatcha force-pushed the voidmatcha/assistant-sidebar-shell branch from 654d828 to d0763c9 Compare October 11, 2026 11:31

This branch has not been deployed

No deployments
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.

1 participant