Development docs
Development docsMay include features newer than the installer.

Designer diagnostics

In Design mode, open Project tools → Project diagnostics. Preview exposes the same dialog beside its communication controls.

Project diagnostics takes an explicit local snapshot of the current Designer context. It brings property-binding errors, structured missing references, tag quality and retained component-event messages into one filterable view. Refresh snapshot updates the result; tag ticks do not move the list while it is being inspected. Category, severity and literal text filters compose, with 50 messages per page and a disclosed 1,000-message snapshot limit.

Open closes the dialog, leaves Preview and selects the owning screen/template component or project resource. Structured owner IDs are preserved. A browser event whose component ID appears in more than one resource has no shortcut, because the existing event coordinator does not identify the specific instance; the dialog does not guess.

Checked scope

  • Expression-property bindings are evaluated using the current root screen or template's components, typed parameters, local inputs, state and available tag snapshot. Nested templates, repeater rows and popup form contexts are not simulated using parent values.
  • The supplied project search index provides known missing structured references across the draft. Code and SQL mentions are not treated as dependencies. Tag existence and assets are outside that index's authority.
  • Bad or uncertain tag quality and gateway disconnection are shown separately from binding errors. Tag values are omitted; the source timestamp is displayed for quality entries. Quality uses the same accepted Good variants as the binding evaluator.
  • The current run's component-event coordinator supplies its latest 20 retained messages and latched feedback breaker. Messages now carry their recording time. Ordinary message dismissal and run resets retain their existing behavior.
  • Query properties report sample not captured when no renderer sample was supplied. This first Designer integration does not capture those samples. The dialog never executes a named query, Python, authored browser code or network request.

This is a D11 inspection baseline. Python execution history, input-event notices, SQL execution logs, browser-console capture, deeper instance context, value watches and structured trace export are not implemented in this panel. No export is provided. The collector does not copy raw tag or form values; authored event messages still appear as written, so scripts should not log secrets. A clear snapshot means no issues were found in the checked scope, not that the whole application is healthy.

Workshop

Import the independently authored designer-diagnostics.sparkproj, or build it from examples/designer-diagnostics.json. It uses a native local form, a built-in sample read query and one deliberately failing browser event. No tag, device, external database, asset, network or Python runtime is required. The optional event exercise needs an administrator to explicitly enable Live actions, because default Preview blocks authored scripts.

  1. Open Diagnostics workshop in Designer and enter Preview. Requested label width starts at 300; its target label is healthy. The built-in query caption should show Assembly A.
  2. Set the width to -1 and check Produce an invalid color. These values are valid form input but invalid for their bound presentation properties. Open Project diagnostics and choose Property bindings. Both failures identify their exact component and target property.
  3. Filter for width, then use Open diagnostics-width-target. The dialog closes, Preview ends and Designer selects the target. Inspect the existing width binding in the property sheet; no definition was changed by inspection.
  4. Reenter Preview with default values and refresh the diagnostic snapshot. The width and color errors disappear. Choose Query properties and read the explicit sample not captured message; it is an information entry, not a failed query.
  5. In Preview, check Create a deliberate browser-event error. In read-only mode the retained message explains that the authored event was blocked. Open Diagnostics and inspect Browser component events, including its recording time.
  6. Optionally enable Live actions, which resets the form, then check the event box again. Its message becomes Deliberate diagnostic workshop event failure. The example script has no write or network calls. Returning to read-only resets the run.
  7. Inspect Resource references and Tag quality / connection. The authored workshop starts with valid references and creates no tags. Gateway quality entries, if any, reflect the gateway's existing snapshots and are not generated by this example.

The automated model checks cover snapshot immutability, root-scope limits, query uncertainty, reference identity, duplicate event component IDs, quality consistency, omission of raw values, filtering, bounds and the absence of network/script execution.