logo
afiş afiş
Blog Details
Created with Pixso. Evde Created with Pixso. blog Created with Pixso.

Mold Studio Advances Backend Architecture and API Standardization

Mold Studio Advances Backend Architecture and API Standardization

2026-11-04

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.

Generation timing and metadata

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.

Duration tracking

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.

Billing and storage transparency

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
Task control and consistency

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.

Frequently Asked Questions
Why do historical print records lack generation duration?
The generation_time_ms field is currently produced only in real-time completion events and queue tasks. When a print record is reloaded from the Gallery, the system cannot retrieve the duration of that task because persistent metadata support is absent.
Can the system pause a generation task that is already running?
No. The current denoising engine architecture does not allow a task to be suspended while it is running. The system allows the queue to be paused after the current task finishes rather than interrupting an active computation.
How will generation step configuration be kept consistent across modules?
At present, h3_private_bridge.rs and generation_profile::steps_ladder use different step definitions, based on one-step and three-step configurations. Future updates to the bridge module should call the standard configuration interface to eliminate the discrepancy.