Changelog

What we shipped, week by week. Subscribe to get it in your inbox.

Subscribe
FixedAugust 26, 2026

Clearer errors when forking an app fails

Failed forks used to return an opaque 500 with no server-side trace. Permission and not-found failures now surface as proper 403/404 responses, and unexpected errors are logged so they can actually be diagnosed.

FixedAugust 26, 2026

Production Android builds fixed

Release builds of the mobile app were failing to bundle JavaScript due to a missing Babel preset. Production Android builds now complete successfully.

FixedAugust 26, 2026

Dialogs now respect custom max-width

Setting an unprefixed width like max-w-2xl or max-w-5xl on a dialog was silently ignored on desktop, leaving it stuck at 384px. Dialogs now widen as requested, both in generated apps and across the platform (screenshots, chat gallery, feature catalog, and more).

ImprovedAugust 26, 2026

Consistent tab bar icons on Android

The Android tab bar mixed tinted line icons with a full-color ๐Ÿ”” emoji for notifications. All tabs now render as matching single-color line icons in both active and inactive states. iOS is unchanged.

NewAugust 26, 2026

Per-row last-write metadata for building "unseen changes" UI

Shared collection rows now carry updatedAt and updatedBy end to end, so apps can badge rows that have changed since a viewer last saw them. Anonymous, link-grant, and scheduled writes intentionally leave updatedBy unset so per-viewer "unseen" logic can't be fooled by system-attributed writes.

ImprovedAugust 26, 2026

"Fork & edit" is now labeled clearly

In the app overflow menu, clicking Edit on an app you weren't a member of would silently fork it with no indication a copy was being made. The fork action is now spelled out as "Fork & edit," while "Edit" only ever opens the studio on apps you can edit directly.

ImprovedAugust 26, 2026

Breathing room between the back button and app title

The "โ€น Apps" back control sat flush against the app title and read as one run-on label. It now has its own spacing and a slightly larger tap target.

ImprovedAugust 26, 2026

Real app icons in the mobile app

The native app grid and browse lists now show each app's actual icon โ€” the same gradient tile with lucide glyph you see on the web โ€” instead of a plain colored box with the first letter of the name.

ImprovedAugust 26, 2026

Refreshed mobile app icon

The mobile app now ships with the real stacked-squares brand mark across the iOS launcher, Android adaptive icon (including the themed monochrome variant), splash screen, and Play Store listing โ€” replacing the earlier placeholder chevron.

FixedAugust 20, 2026

Dialogs now respect custom widths

Setting a wider max-width on a dialog (like max-w-2xl or max-w-5xl) previously had no visible effect on desktop โ€” dialogs stayed capped at 384px. Custom widths now apply correctly, both in generated apps and across platform dialogs like screenshots, chat gallery, and the feature catalog.

ImprovedAugust 20, 2026

Consistent tab bar icons on Android

Replaced the mismatched color emoji notification icon on Android with a clean line icon, so all tabs now render as consistent single-color icons that respect the active/inactive tint. iOS is unchanged.

FixedAugust 20, 2026

Android production builds now bundle successfully

Fixed a missing dependency that caused production Android builds to fail during JavaScript bundling. Release builds now complete reliably.

ImprovedAugust 20, 2026

Cleaner spacing in the app header

Added breathing room between the back button and the app title so the back control reads as its own button โ€” and gets a slightly larger tap target.

FixedAugust 20, 2026

Clearer errors when forking an app fails

Fork failures now return meaningful status codes (403 for permission issues, 404 for missing apps) instead of a generic 500, and unexpected errors are logged so problems can actually be diagnosed.

ImprovedAugust 20, 2026

"Edit" no longer silently forks apps you don't own

When you don't have direct edit access to an app, the overflow menu now clearly shows "Fork & edit" instead of a generic "Edit" item, so it's obvious when clicking will create a copy. Members of the app's workspace still see a plain "Edit" that opens the studio directly.

NewAugust 16, 2026

Paste an image to upload it

Image upload fields now accept pasted images from your clipboard. Focus or hover the uploader you want, paste, and it goes through the same upload path as drag-and-drop. The empty-state hint has been updated to mention paste.

FixedAugust 16, 2026

Local and CI builds no longer send analytics to production PostHog

Server-side analytics events now require an explicit deploy label to fire, so running a production build locally or in test suites can no longer send events into the real PostHog project tagged as production.

NewAugust 16, 2026

Age ratings and an age gate for 9+ and 12+ apps

Apps now carry a content rating, collected from creators at publish time and independently assessed by an automated screener that caps ratings at 12+. Viewers of a rated app are asked once for their birth year (stored on the account when signed in, or in a private cookie when anonymous) and can't reach content above their age. The gate is enforced on both the page and the data layer, and it never leaks the existence of unpublished or private apps to outsiders.

NewAugust 16, 2026

Native mobile app foundation

Groundwork for a native mobile shell on iOS and Android: a shared bridge that lets generated apps run inside a native WebView the same way they run in the web iframe, native push support alongside web push, bearer-token sign-in with a secure session store and automatic 401 handling, an Apps tab with workspace switcher and Browse directory, a notification inbox with deep-link routing, in-app reporting and age-gate flows, camera and consent handling, and universal-link verification files served from the web.

NewAugust 16, 2026

Block a creator to hide their apps everywhere

Signed-in viewers can block a creator from the app detail page. Their apps disappear from your directory, search, New, Popular, related apps, and the featured slot, and you stop getting notifications sourced from them. Blocking is silent and one-sided โ€” the creator is never told, and no one else is affected.

NewAugust 16, 2026

Objectionable-content policy, contact paths, and moderation disclosures in Terms

The Terms now include a dedicated section on objectionable content and moderation: our zero-tolerance stance, that every publish is automatically screened and every report is reviewed by a person, how to report from inside the product or by emailing abuse@feldova.com without an account, the 72-hour decision commitment, and what happens to repeat offenders.

FixedAugust 16, 2026

Seat invites show the real Stripe cost, including proration, VAT, and discounts

The invite dialog no longer displays a hand-computed cost estimate. It now asks Stripe for a real invoice preview so the hint reflects your plan's interval, current discounts, VAT, and how proration will actually be charged when you add a seat.

FixedAugust 16, 2026

Report submissions are rate-limited to protect the moderation queue

Reports now have their own dedicated rate limit โ€” a tighter per-IP bucket plus a per-user bucket โ€” so a single source can't flood the human-triaged queue, and legitimate reporters sharing a carrier NAT aren't punished for someone else's abuse.

NewAugust 16, 2026

Suspended apps are fully withdrawn from the platform

When an app, workspace, or creator is suspended, the app disappears from directories, search, New, Popular, related apps, the workspace browse page, the public listing page, its metadata and social preview cards, the featured slot, the newsletter, the sitemap, and the fork button โ€” everywhere a passerby might encounter it. The creator can still open the app in studio preview against a sandboxed draft so they can see and fix what got it suspended, and receives an email explaining the decision with an appeal path.

FixedAugust 16, 2026

Removing a collaborator now fully revokes their access

When an installation owner removes a collaborator (or someone leaves an installation themselves), any per-row grants tied to that person's identity are revoked in the same step as the membership. Removed really means removed โ€” a former collaborator can no longer reach previously granted rows by identity.

NewAugust 16, 2026

Every publish is automatically screened for objectionable content

Publishing an app โ€” or swapping in new code under an already-public app โ€” now runs the name, description, frontend, and server code through an automated content classifier. Clearly disallowed content is blocked with a specific, appealable reason; borderline cases are flagged for a human. Suspended creators can no longer push new code to existing public apps to work around a suspension.

NewAugust 16, 2026

Report apps and creators, right from where you see them

You can now report any app you come across โ€” from its public listing page, from inside the running app, or from your workspace sidebar โ€” whether or not you're signed in. Pick from a shared set of reasons, add a note, and get a clear 72-hour follow-up commitment. Anonymous reporters who leave a valid email will hear back; the flow no longer promises follow-up for addresses we can't actually reach.

FixedAugust 8, 2026

Reliable delivery for comment digest emails

Fixed an issue that could prevent comment digest and certain sign-up notification emails from being delivered.

NewAugust 8, 2026

Comment threads on your apps

You can now add comments directly on records in your generated apps. Threads are shared across everyone with access, watchers get email digests when new replies come in, and comment activity shows up alongside other updates in the Activity feed.

FixedAugust 5, 2026

More reliable AI edits for complex requests

The AI assistant now preserves its reasoning across tool-use steps, preventing cases where multi-step changes would collapse into tiny or empty edits. Requests like adding a confirmation dialog now consistently produce the full intended change.

ImprovedAugust 5, 2026

Sturdier app runtime startup

Hardened the runtime boot process so apps start up more reliably.

FixedAugust 4, 2026

Assistant writes appear instantly in your open app

When the Assistant writes data on your behalf, the changes now show up live in the open app instead of waiting for a reload. Each Assistant step is also clearly labeled so you can see what it did.

FixedAugust 4, 2026

Assistant correctly recognizes writable collections

The Assistant no longer mistakes readable collections for read-only mirrors. Actions like adding cards to a board now work instead of being refused with a confusing 'no ingest surface' message.

FixedAugust 4, 2026

Image attachments work across all AI providers

Images you attach in studio chat are now inlined directly into the request instead of sent as a URL for the provider to fetch. Runs that previously failed on providers that reject remote image URLs now succeed.

ImprovedAugust 4, 2026

Generated apps refuse to boot with a missing UI bundle

If the UI component bundle is missing, the server now fails fast with a clear error instead of silently rendering interactive elements like Dialog, Select, and Tabs as blank. This is verified in CI so it can't regress.

ImprovedAugust 4, 2026

Kimi K3 is now the default generation model

New apps are generated with Kimi K3 by default, with pricing and credit weights tuned to match. The composer's High-tier cost hint now reflects real usage against the new model instead of the older GLM ratio.

FixedAugust 4, 2026

Tool-using requests route to the intended provider

Fixed a schema quirk that caused tool-using requests to silently fall through to a much more expensive backup provider. Requests now stay on the primary router as intended.

ImprovedAugust 4, 2026

Updated privacy policy and terms

The privacy policy and terms now describe AI sub-processors by category rather than by name, with the current provider list available on request. International data transfer language has also been updated to reflect where generation actually runs.

FixedAugust 2, 2026

Builds that change nothing no longer ship a new version

Previously, a generation run that produced no code changes would still create a new app version, advance your current version pointer, and charge credits as if work had landed. These no-op runs are now correctly recognized so your version history stays clean and you aren't billed for empty builds.

ImprovedAugust 2, 2026

Easier access to platform updates

The "Update to latest platform standard" action has moved from the chat panel into the studio top bar, next to App settings โ€” with its full label visible so it's easier to find when a new platform version is available.

NewAugust 2, 2026

Generated apps can now delete files

Until now, once a file was created in your app it could never be removed โ€” old files lingered as dead code, got sent to the model as context on every run, and drifted out of sync with the rest of your app. Generations can now properly delete files, keeping your codebase lean and your app easier for the AI to reason about.

ImprovedAugust 2, 2026

Polished Open Graph and web manifest metadata

Updated the default Open Graph image alt text and the web app manifest description so Feldova looks sharper when shared as a link or installed as a web app.

FixedJuly 31, 2026

Pointer cursors restored in generated apps

Buttons and other interactive elements in your generated apps now show the pointer cursor on hover again, making them feel more responsive and clickable.

FixedJuly 30, 2026

React render crashes are now captured and reported

Errors caught by the app's React error boundary are now persisted alongside other runtime errors, so render crashes surface in your error history โ€” not just in the live studio banner.

ImprovedJuly 30, 2026

Generated apps now run real Base UI components

DropdownMenu, Dialog, Popover, Select, Sheet, Tabs, Tooltip, Collapsible, and RadioGroup in your generated apps are now powered by the real Base UI components instead of hand-written shims. This brings proper keyboard navigation, focus management, exit animations, portaled content, collision-aware positioning, and real Sheet side-panels (previously Sheet was just a centered Dialog and the `side` prop did nothing). A compatibility translator keeps Radix-style patterns like `asChild` and `onSelect` working.

FixedJuly 30, 2026

Clicks inside menus and popups no longer leak to the row behind them

Clicking an item inside a dropdown, dialog, popover, select or sheet no longer accidentally triggers the onClick of a clickable ancestor (like a list row that owns an overflow menu). Portaled popups are now properly isolated from their React ancestors.

FixedJuly 30, 2026

Duplicate declarations across files are now caught before shipping

Fixed a class of bugs where two files declaring the same type alias, function, or class would ship to your iframe and crash at runtime with an error the assistant couldn't diagnose. Lint now parses the assembled code, and iframe compile errors now name the specific file and line involved.

FixedJuly 30, 2026

Nested triggers on menus, dialogs, popovers and more now open reliably

Buttons that trigger a dropdown, dialog, popover, tooltip, collapsible or select no longer silently fail when they're wrapped inside a styling component. The trigger context is now delivered through React context at any nesting depth, matching how shadcn/Radix compositions are expected to work.

FixedJuly 30, 2026

Tab strips render above their panels again

Fixed a layout regression where generated apps rendered tab triggers beside their panels instead of above them. The sandbox now includes shadcn's Tailwind layer so orientation variants resolve correctly.

ImprovedJuly 30, 2026

Faster app loads with real ESM bundling

New app versions are now precompiled server-side with esbuild instead of being compiled in your browser with Babel on every load. Boot errors report the exact source file and line through inline sourcemaps. Legacy apps continue to work unchanged via the previous render path.