Skip to content

fix(web): persist BYOK deck artifacts as decks#3594

Open
YOMXXX wants to merge 1 commit into
nexu-io:mainfrom
YOMXXX:fix/issue-1698-byok-ppt-preview
Open

fix(web): persist BYOK deck artifacts as decks#3594
YOMXXX wants to merge 1 commit into
nexu-io:mainfrom
YOMXXX:fix/issue-1698-byok-ppt-preview

Conversation

@YOMXXX

@YOMXXX YOMXXX commented Jun 3, 2026

Copy link
Copy Markdown
Collaborator

Fixes #1698

Why

I picked this up from the P0 BYOK/API-key-mode PPT preview bug. In API mode the model emits a plain <artifact type="text/html">...</artifact> payload, and the web persistence path was always stamping that HTML artifact as a generic html manifest.

That loses the deck renderer metadata and pptx export affordance for PPT projects, which can leave the right preview/export path behaving differently from the CLI/tool-emitted deck path.

What users will see

PPT/deck projects generated through API key mode keep their generated HTML artifact as a deck artifact. The preview path receives deck-html renderer metadata, and the artifact manifest includes the pptx export option.

Surface area

  • UI — new page / dialog / panel / menu item / setting / empty state in apps/web or apps/desktop (including Electron menu bar)
  • Keyboard shortcut — new or changed
  • CLI / env var — new od subcommand or flag, new tools-dev / tools-pack / tools-pr flag, or new OD_* env var
  • API / contract — new /api/* endpoint, new SSE event, or changed shape in packages/contracts
  • Extension point — new entry under skills/, design-systems/, design-templates/, or craft/, or change to the skills protocol
  • i18n keys — added new translation keys (see TRANSLATIONS.md for the locale workflow)
  • New top-level dependency — adding any new entry to the root package.json (dependencies or devDependencies); workspace-package package.json files are out of scope. Include a paragraph on what we get vs. what bytes we ship (see CONTRIBUTING.md → Code style)
  • Default behavior change — changes what existing users experience without opting in (default model, default setting, file/SQLite schema, auto-network on startup, auto-install)
  • None — internal refactor, docs, tests, or translation update only

Screenshots

Not applicable; no new UI surface.

Bug fix verification

  • Test path that reproduces the bug: apps/web/tests/components/ProjectView.api-empty-response.test.tsx
  • Did the test go red on main and green on this branch? The new regression spec failed before the source change on this branch's main-based worktree, then passed after the fix.

Validation

  • pnpm install
  • pnpm --filter @open-design/web exec vitest run -c vitest.config.ts tests/components/ProjectView.api-empty-response.test.tsx
  • pnpm --filter @open-design/web typecheck
  • pnpm guard
  • pnpm typecheck
  • git diff --check

@github-actions

github-actions Bot commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

Visual regression review

Head: 04ea71c · Base: f3ec496

13 changed · 4 unchanged · 0 missing baseline · 0 failed

Changed cases

Case Main PR Diff
visual-design-systems main pr diff
visual-home main pr diff
visual-home-catalog main pr diff
visual-home-context-picker main pr diff
visual-home-plugin-filter main pr diff
visual-integrations main pr diff
visual-integrations-use-everywhere main pr diff
visual-new-project-modal main pr diff
visual-plugins main pr diff
visual-projects main pr diff
visual-projects-kanban main pr diff
visual-tasks main pr diff
visual-topbar-execution-switcher main pr diff
Unchanged cases
Case Main PR Diff
visual-avatar-menu main pr diff
visual-plugin-details main pr diff
visual-settings-byok main pr diff
visual-settings-execution main pr diff

Visual diff is advisory only and does not block merging.

@lefarcen lefarcen requested a review from PerishCode June 3, 2026 23:43
@lefarcen lefarcen added size/S PR changes 20-100 lines risk/medium Medium risk: regular code changes type/bugfix Bug fix labels Jun 3, 2026
@lefarcen lefarcen mentioned this pull request Jun 3, 2026

@PerishCode PerishCode left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

@YOMXXX I reviewed the BYOK deck artifact persistence path and the focused regression coverage. The change keeps normal HTML manifests unchanged while allowing deck projects to persist artifact-tag HTML with deck-html renderer metadata and the pptx export affordance, which lines up with the preview/export bug in #1698. Nice focused fix with the regression anchored on the API-mode flow.

🔁 Powered by Looper · runner=reviewer · agent=codex · An autonomous AI dev team for your GitHub repos.

@kokisanai

Copy link
Copy Markdown
Contributor

Hi @YOMXXX!

This PR looks quiet for a bit, so I'm checking in to make sure it doesn't get stuck.

If you are waiting on review, feedback, or a specific unblock from the team, feel free to say so here. If faster coordination helps, you can also drop into our contributors channel in Discord:
https://discord.gg/3C6EWXbdQQ

We want to help move this forward instead of letting it stall.

@lefarcen

lefarcen commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Hey @YOMXXX — quick status update so this does not look stuck: @PerishCode has already approved the current head, and CI is green on this branch.

From our side this is tracking as a restoration bug fix for #1698 rather than a new product-direction change, so there is not extra review feedback pending here right now. If there is anything specific you want re-checked, feel free to drop it in this thread — otherwise we will keep it moving from the maintainer side.

@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown
Contributor

@YOMXXX friendly reminder: this PR has been waiting on an author response for more than 3 days after reviewer or maintainer feedback.

When you have a chance, please reply here or push an update. To keep the queue manageable, PRs with no author activity for more than 5 days after feedback may be closed automatically, but they can be reopened when work resumes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk/medium Medium risk: regular code changes size/S PR changes 20-100 lines type/bugfix Bug fix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

preview error

4 participants