Skip to content

fix: PPT Live reliability, remote reconnect, and file-read freshness - #1565

Merged
bobleer merged 4 commits into
GCWing:mainfrom
bobleer:fix/ppt-live-and-remote-agent-reliability
Jul 16, 2026
Merged

fix: PPT Live reliability, remote reconnect, and file-read freshness#1565
bobleer merged 4 commits into
GCWing:mainfrom
bobleer:fix/ppt-live-and-remote-agent-reliability

Conversation

@bobleer

@bobleer bobleer commented Jul 16, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Harden PPT Live generation (project.json/slides protocol, retries, targeted repair) and editable-first PPTX export with layered SVG/PNG fallbacks, sanitization, diagnostics, and OOXML/CI coverage.
  • Keep SSH remote workspaces reconnecting for a full 180s budget instead of removing them after a single fast connect failure.
  • Fix remote Agent Edit/Write false freshness failures caused by trailing-newline reconstruction gaps between Read-tool cache and SFTP re-reads.

Test plan

  • pnpm run test:ppt-live (98/98)
  • cargo test -p bitfun-product-domains --features product-full
  • cargo check --workspace
  • pnpm run type-check:web
  • pnpm run check:github-config
  • Focused SSH remote reconnect tests: pnpm --dir src/web-ui exec vitest run src/features/ssh-remote/remoteWorkspaceReconnect.test.ts src/features/ssh-remote/SSHRemoteProvider.test.tsx
  • Focused file-read freshness tests: cargo test -p bitfun-tool-contracts --test tool_contracts file_read_freshness and cargo test -p bitfun-agent-runtime --lib file_read_state
  • Manual: generate/edit PPT Live deck and export PPTX with mixed SVG/gradient content
  • Manual: disconnect remote SSH and confirm workspace is retained until ~180s before removal
  • Manual: remote Agent Read then Edit a trailing-newline text file without false freshness errors

bobleer added 4 commits July 16, 2026 10:20
Fast connect failures previously exhausted a single retry and removed the
workspace immediately. Use a deadline-driven reconnect budget so remote
workspaces stay until the full timeout elapses.
Read-tool cache reconstruction drops a trailing newline while remote SFTP
re-reads preserve it. Normalize that gap so remote Edit/Write no longer
false-fail freshness checks on unchanged files.
Tighten the project.json/slides file protocol with retries and targeted
repair, auto-fix export DOM issues, prefer native editable PPTX objects
with layered SVG/PNG fallbacks, and add OOXML/CI regression coverage.
Declare pdf-lib/jszip at the workspace root and guard flat-select browser
listeners so ppt-live source imports no longer depend on host node_modules
or a DOM global during CI.
@bobleer
bobleer merged commit d8e7f92 into GCWing:main Jul 16, 2026
5 checks passed
@bobleer
bobleer deleted the fix/ppt-live-and-remote-agent-reliability branch July 16, 2026 03:10
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