# Web App

All notable changes to the GoFigr Web App (Frontend).

**Current version:** v2.4.2

***

## April 2026

### v2.4.2 — April 7, 2026

* Minor Clean Room fixes

### v2.4.1 — April 7, 2026

* Workspace dropdown is now always visible so users can create new workspaces from anywhere

### v2.4.0 — April 7, 2026

* **Manual Sync Analysis** — replaces auto-tracking with an explicit "Sync Analysis" button and modal; story config auto-saves before refine/recreate
* **Auto-retry AI code changes** — on execution failure or no output, the AI automatically retries with runtime and `publish()` details added to the feedback prompt
* **WebR `publish()` parameters** — `width`, `height`, and `dpi` are now supported in the WebR shim
* Removed short ID resolution layer — server now accepts short IDs directly
* Added refresh buttons to revision view, revision selector, and task overview panel
* Hide spurious scrollbar on AI chat input
* Updated empty-slide copy: "No content for this slide yet" / "Create with AI"
* Fixed unwanted page scroll when slides update or when clicking Create with AI / Edit manually
* Fixed `ReferenceError` in CleanRoomStudio caused by `availablePackages` ordering
* Fixed sync duplicates, stuck loading state, and various copy tweaks
* Suppress auto-scroll to new slides during sync; stop polling on unmount
* Fixed workspace selector race condition on navigation
* Fixed null revision crash in Sync Analysis modal

### v2.3.0 — April 3, 2026

* **Clean Room Studio polish** — richer AI context, base R graphics support, UX tweaks
* Fixed DPI mismatch between preview and publish in Clean Room Studio
* Updated bundled `gofigr` wheel to v2.2.0 (short\_id watermarks, consistent image sizing)

### v2.2.7 — April 2, 2026

* **WebR Clean Room runtime** — in-browser R execution with JS-side publishing and watermarking
* WebR polish: package preloading, cache invalidation, DataFrame preview, UI fixes
* Real-time capture wizard: hide API key when using `gfconfig`, upgrade pip command
* Switched Pyodide QR code library from `pyqrcodeng`+`pypng` to `qrcode`

***

## March 2026

### v2.2.6 — March 31, 2026

* **Workspace link in revision view** — workspace selector now syncs on navigation
* **Real-time capture wizard examples** — added data tracking and Clean Room examples
* Added raw JSON toggle and `formatValue` helper to the Clean Room manifest viewer
* Auto-save story config before refine and recreate
* Fixed Auth0 registration and invitation flows
* Fixed `jsToPythonLiteral` to handle arrays and objects with correct Python syntax
* Show logout button instead of retry on account conflict errors
* Handle Auth0 email verification and account conflict errors gracefully

### v2.2.5 — March 28, 2026

Frontend Auth0 migration:

* **Auth0 login** — full switch to Auth0 with dual-mode support; legacy auth UI removed
* **Live MFA enrollment status** on the user profile page
* **User settings refresh for Auth0** — password change, logout fix, and claim-based fields
* Real-time capture wizard improvements; activity deduplication moved server-side

### v2.2.4 — March 23, 2026

* **Auto-assign title polling** — Revision view shows a shimmer placeholder with countdown while AI assigns a figure title, then updates in place when complete
* **Friendlier AI assistant wording** — Interactive AI chat uses approachable language ("Ask a question or describe a change..." instead of "Describe a code change...")
* **Improved analysis breadcrumb** — Larger, darker text with "Analysis:" prefix for better visibility in revision view
* **Story generation progress** — Rolodex-style content scroller and task detail progress in story generation view
* **Clean Room badge** — Badge indicator and lazy descriptions for Clean Room figures
* Fixed unwanted page scroll when opening AI chat in Clean Room
* Fixed AI chat messages causing page overscroll
* Fixed stale descriptions in figure table after in-place refresh
* Fixed cache race condition causing duplicate API calls
* Fixed stale workspace data after cache invalidation
* Fixed navigation loop in create entity view
* Fixed back-navigation not refreshing analyses list and home dashboard

### v2.2.3 — March 20, 2026

* **Short ID resolution** — Shared revision URLs now support compact short IDs
* **Modernized analysis view** — Visual consistency with analyses list, card styling
* **Redesigned Data Files tab** — ModernFileListItem cards with skeleton loading
* **Inline image toolbar** — Replaced floating toolbar with inline toolbar above figure
* Restyled source line with left-accent bar and tinted background
* Fixed UI stuck in loading state after cancelling story generation

### v2.2.2 — March 18, 2026

* Fixed image MIME type for Chrome compatibility — replaced bare `data:image;base64` with `data:image/png;base64` for thumbnails and dynamic format from metadata for full images

### v2.2.1 — March 17, 2026

* **Asset list analysis filter** — Searchable autocomplete dropdown with analyses grouped by "With files" (showing count) and "No files", sorted by most recent
* **Analysis filtering on assets** — Filter assets by analysis; show analysis badge on asset cards/rows; "View analysis" link on asset detail
* **Sticky header** — Changed header from fixed to sticky positioning, eliminating top offset hacks
* Fixed analysis view tab margins and card background

### v2.2.0 — March 10, 2026

* **Async story generation** — Stories now generate in the background with phase-aware progress tracking (figure analysis, overview generation, refinement)
* **Code snippets in data slides** — Dataset slides now display inline code snippets when no URL is available
* **Figure reordering from overviews** — LLM-suggested narrative flow reorders figure slides automatically
* **Updated Claude model registry** — Removed Claude 3, added Claude 4.6 and Haiku 4.5
* Redirect presentation mode to editor when story generation is in progress
* Removed deprecated `promptData` system (content generation is now fully server-side)
* Fixed Pyodide runtime resetting when description updates
* Fixed model persistence and selection across story UI
* Fixed PowerPoint footer logo aspect ratio

### v2.1.2 — March 4, 2026

* Refresh JWT before publish in Pyodide Studio

### v2.1.1 — March 4, 2026

* Fixed null analysis crash when viewing link-shared figures as logged-in user

### v2.1.0 — March 3, 2026

* **AI chat panel** for agentic code editing in Studio
* Improved AI Figure Assistant empty state and placeholder contrast
* Moved AI chat to right sidebar in full Studio
* Fixed split height bug
* Pass current code to PyodidePublisher on publish

### v2.0.1 — March 3, 2026

* Added unified **UserDataTable** component for user-uploaded tabular data
* Show collapsible stack trace on error page
* Removed opacity on Clean Room fallback image

### v2.0.0 — March 2, 2026

Major release introducing **Clean Room Studio**:

* **Pyodide execution** — Run Python in the browser with interactive widgets
* **Studio IDE** — Mini IDE with code editor, environment tab, and memory display
* **Figure publication** — Debounced Pyodide publishing with countdown timer
* **Parameter panel** — Helper panel for parameter variables above code editor
* **Publish flow** — Error modals, stale content UX, and publish parameter management
* Stabilized figure size across publish/unpublish states
* Clean Room badge/link UI and fallback image
* SVG image format support for Pyodide

***

## February 2026

### v1.9.16 — February 7, 2026

* Release and infrastructure updates

### v1.9.15 — February 7, 2026

* Merge updates from develop

### v1.9.14 — February 6, 2026

* Handle paginated response from admin user analytics endpoint

### v1.9.13 — February 6, 2026

* Added anonymous user activity logging support

### v1.9.12 — January 28, 2026

* Enabled anonymous Deep Insight access
* Fixed asset revision links
* Added Dockerfile healthcheck to prevent premature routing
* Unified Jupyter notebook preview components

***

## January 2026

### v1.9.11 — January 23, 2026

* Enabled evidence in presentation mode
* Fixed modal sizing

### v1.9.10 — January 23, 2026

* Editable story titles
* Fixed spacing in edit mode
* Fixed slide re-ordering not updating positions

### v1.9.8 — January 22, 2026

* Handle `/story/{uuid}` without `/p` suffix for crawlers
* Fixed: Preserve `X-Forwarded-*` headers from upstream proxy (AWS ALB)
* Added nginx crawler detection for server-side OG tags
* Removed broken `/workspace/api_id` links

### v1.9.7 — January 20, 2026

* **Shareable revision presentation view** with Open Graph meta tags
* **Evidence finder** feature for Story Mode
* Added analysis navigation link below figure title
* Figure-level actions and section headers in actions menu
* Restored missing revision view features (actions menu, source info, alerts)
* Fixed mobile UI issues in revision view
* Fixed watermark toggle and description persistence in presentation view

### v1.9.6 — January 19, 2026

* Fixed infinite scroll bug in Recent Figures

### v1.9.5 — January 18, 2026

* **Performance optimizations**
  * Optimize home screen loading
  * Add story thumbnail support
* Added infinite scroll for Recent Figures section

### v1.9.4 — January 16, 2026

* Enable anonymous AI access for public stories
* Fixed thumbnail size handling

### v1.9.3 — January 16, 2026

* **AI Story Mode improvements**
  * Added custom slides support
  * Added Figure Quick View modal for presentations
  * Added generation progress indicator
  * Enable re-adding sections to stories
  * Fixed slide height issues

### v1.9.2 — January 14, 2026

* Fixed error handling in story orchestrator
* Bug fixes and stability improvements

***

## December 2025

### v1.9.0 — December 2025

Major release introducing:

* **AI-Powered Story Mode** — Transform figures into presentations
* **Comments & Collaboration** — Team feedback with @mentions
* **Git Repository Import** — Import notebooks from GitHub/GitLab
* **Document Import** — Extract figures from PowerPoint & Word
* **Enhanced Search** — Text and visual similarity search

See [January 2026 Feature Summary](https://docs.gofigr.io/releases/2026-01) for detailed descriptions.

### v1.8.0 — December 2025

* Initial Deep Insight integration
* Workspace management improvements
* Document assistant enhancements
