Skip to content

Add HTML notebook cells#208

Merged
jlewi merged 2 commits into
mainfrom
codex/html-cell
May 15, 2026
Merged

Add HTML notebook cells#208
jlewi merged 2 commits into
mainfrom
codex/html-cell

Conversation

@jlewi
Copy link
Copy Markdown
Collaborator

@jlewi jlewi commented May 14, 2026

Summary

  • add a dedicated in-place HTML cell mode backed by
  • render HTML cells through a sandboxed iframe preview, including inline SVG content
  • add design documentation, serialization coverage, and a browser CUJ that records a walkthrough video

Testing

  • runme run build test
  • pnpm exec vitest run src/components/Actions/Actions.test.tsx src/lib/markdown/serializeNotebookToMarkdown.test.ts
  • CUJ_UPLOAD=false CUJ_FRONTEND_URL=http://localhost:5174 CUJ_USE_AUTH=false CUJ_DRIVE_FAKE_ENABLED=false CUJ_FAKE_CHATKIT_ENABLED=false CUJ_SCENARIOS=html-cell AGENT_BROWSER_HEADED=true pnpm -C app run cuj:run

jlewi added 2 commits May 13, 2026 23:14
Signed-off-by: Jeremy lewi <jeremy@lewi.us>
Signed-off-by: Jeremy lewi <jeremy@lewi.us>
@jlewi jlewi marked this pull request as ready for review May 15, 2026 00:28
@jlewi jlewi merged commit cc9f855 into main May 15, 2026
4 checks passed
@jlewi jlewi deleted the codex/html-cell branch May 15, 2026 00:28
Copy link
Copy Markdown

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 1f9336a0f0

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment on lines +539 to +540
if (!isRunnableNotebookCodeCell(cell)) {
throw new Error(`HTML cells are not runnable: ${refId}`);
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P1 Badge Restrict HTML-only rejection in notebooks.execute

notebooks.execute now throws on any cell that fails isRunnableNotebookCodeCell, but the thrown message and intent are HTML-specific. Because isRunnableNotebookCodeCell also returns false for non-CODE cells, a request that includes a markdown cell ref (e.g., executing a mixed selection) aborts the entire call before runnable code cells start. This is a behavior regression from the previous implementation, which allowed the request to proceed per ref and did not globally fail on markdown refs.

Useful? React with 👍 / 👎.

jlewi added a commit that referenced this pull request May 15, 2026
## Summary
- add a dedicated in-place HTML cell mode backed by 
- render HTML cells through a sandboxed iframe preview, including inline
SVG content
- add design documentation, serialization coverage, and a browser CUJ
that records a walkthrough video

## Testing
- runme run build test
- pnpm exec vitest run src/components/Actions/Actions.test.tsx
src/lib/markdown/serializeNotebookToMarkdown.test.ts
- CUJ_UPLOAD=false CUJ_FRONTEND_URL=http://localhost:5174
CUJ_USE_AUTH=false CUJ_DRIVE_FAKE_ENABLED=false
CUJ_FAKE_CHATKIT_ENABLED=false CUJ_SCENARIOS=html-cell
AGENT_BROWSER_HEADED=true pnpm -C app run cuj:run

---------

Signed-off-by: Jeremy lewi <jeremy@lewi.us>
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