Mold Studio is moving to close gaps between its desktop design and backend capabilities under a development split tracked as Issue #1586. The work adds missing API endpoints and data fields needed to support generation timing, billing transparency, storage accounting and unified server logic. Several planned client features remain blocked until those backend components are in place.
The current priority is translating client-side feature logic into executable backend API endpoints. Some functions, including generation duration tracking and storage usage calculation, have no corresponding fields in the existing API and require backend iteration to close the data loop.
Generation duration is a key indicator for user experience. The generation_time_ms field currently appears only in real-time completion events and queue tasks, leaving historical records such as reloaded prints in the Gallery without timing data. Adding the field to OutputMetadata would enable duration display in the Recent tab, canvas annotations and the Lightbox, and provide more accurate estimates for the Quality row.
In GPU rental scenarios, RunPodGpu lacks a price field and the Rust backend does not scrape pricing data, so the confirmation billing step cannot present an estimated cost. An additional API endpoint is proposed to retrieve real-time billing information.
Storage management has a similar gap. The existing /api/status endpoint returns only single-row data and does not provide a global storage summary, which limits the full display of the storage card feature.
| Feature area | Current limitation | Improvement direction |
|---|---|---|
| Generation duration | Real-time tasks only | Add field to OutputMetadata |
| GPU billing | No pricing data | Add billing API endpoint |
| Storage statistics | No global summary | Extend /api/status |
For persistent control of generation tasks, the system lacks a marker for not saving results. A server-side flag and admission rules are required to implement the function.
Separately, evaluation confirmed that the current denoising engine cannot suspend a task mid-run, and the related API request has been closed. The system instead allows the queue to be paused after the current task completes. Inconsistencies also remain between crates/mold-server/src/h3_private_bridge.rs and other modules over steps.recommended logic; the difference between the one-step and three-step definitions in generation_profile::steps_ladder should be resolved by calling a standard configuration interface in future bridge updates.