QuartzUIProjectAudit: declaration reference
0.57.0-dev · beta source documentation. Native, Blueprint, Editor and rendering examples are source-reviewed, not executed in Unreal during this scan. See validation and limits.
Pinned source (source: Source/QuartzUIEditor/Public/QuartzUIProjectAudit.h) · integration recipe · practical guide
FQuartzUIStagedFile
Editor type. One exact project-owned file admitted to the UFS package payload.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIProjectAudit recipe in the host module QuartzUIEditor.
Minimal example / lifecycle: QuartzUIValidate -Mode=Shipping; inspect audit result. Current output is validated without Node/build side effects.
Avoid: Confusing audit manifest with per-app build manifest. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIEditor/Public/QuartzUIProjectAudit.h#L9)
FQuartzUIAuditedApp
Editor type. Resolved identity and freshness evidence for one registered production app.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIProjectAudit recipe in the host module QuartzUIEditor.
Minimal example / lifecycle: QuartzUIValidate -Mode=Shipping; inspect audit result. Current output is validated without Node/build side effects.
Avoid: Confusing audit manifest with per-app build manifest. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIEditor/Public/QuartzUIProjectAudit.h#L20)
FQuartzUIProjectAuditOptions
Editor type. Shared invocation options for Editor UI, commandlets, CI, tests, and cook.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIProjectAudit recipe in the host module QuartzUIEditor.
Minimal example / lifecycle: QuartzUIValidate -Mode=Shipping; inspect audit result. Current output is validated without Node/build side effects.
Avoid: Confusing audit manifest with per-app build manifest. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIEditor/Public/QuartzUIProjectAudit.h#L33)
FQuartzUIProjectAuditResult
Editor type. Canonical package manifest plus a machine-readable audit result.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIProjectAudit recipe in the host module QuartzUIEditor.
Minimal example / lifecycle: QuartzUIValidate -Mode=Shipping; inspect audit result. Current output is validated without Node/build side effects.
Avoid: Confusing audit manifest with per-app build manifest. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIEditor/Public/QuartzUIProjectAudit.h#L52)
FQuartzUIProjectAuditService
Editor type. Deterministic production-output policy shared by every non-interactive path. It validates already-built project output and never invokes Node, copies an app, installs dependencies, or writes below the installed plugin.
Prerequisites / integration: Installed source plugin; Editor tools additionally require a compiled compatible host Editor target. Use the QuartzUIProjectAudit recipe in the host module QuartzUIEditor.
Minimal example / lifecycle: QuartzUIValidate -Mode=Shipping; inspect audit result. Current output is validated without Node/build side effects.
Avoid: Confusing audit manifest with per-app build manifest. Match the exact declaration below; dependent DTOs/enums are values used by this owner, not independent systems.
Exact source line (source: Source/QuartzUIEditor/Public/QuartzUIProjectAudit.h#L71)
Complete header
Source snapshot, not an additional example. Unreal annotations distinguish exposed Blueprint nodes from native-only/private methods.
#pragma once
#include "CoreMinimal.h"
#include "QuartzUIProjectValidation.h"
class UQuartzUIProjectSettings;
/** One exact project-owned file admitted to the UFS package payload. */
struct QUARTZUIEDITOR_API FQuartzUIStagedFile
{
FName AppId;
FString ProjectRelativePath;
FString AppRelativePath;
int64 Size = 0;
FString Sha256;
FString Reason;
};
/** Resolved identity and freshness evidence for one registered production app. */
struct QUARTZUIEDITOR_API FQuartzUIAuditedApp
{
FName AppId;
FString SourceRoot;
FString BuildRoot;
FString CookedRoot;
FString EntryPage;
FString Origin;
FString ContractFingerprint;
FString LocalizationFingerprint;
};
/** Shared invocation options for Editor UI, commandlets, CI, tests, and cook. */
struct QUARTZUIEDITOR_API FQuartzUIProjectAuditOptions
{
EQuartzUIValidationTarget Target = EQuartzUIValidationTarget::CommandLine;
/** Absolute project-directory override used only by isolated automation fixtures. */
FString ProjectDirectory;
/** Optional command-line evidence destinations. Empty values use project settings. */
FString ManifestPath;
FString AuditReportPath;
/** Product entry points reject any conflicting loose NonUFS staging policy. */
bool bCheckStagingConfiguration = true;
/** Tests can inspect canonical bytes without changing the filesystem. */
bool bWriteArtifacts = true;
};
/** Canonical package manifest plus a machine-readable audit result. */
struct QUARTZUIEDITOR_API FQuartzUIProjectAuditResult
{
bool bValid = false;
FString BuildIdentity;
FString ManifestSha256;
FString ManifestPath;
FString AuditReportPath;
FString ManifestJson;
FString AuditJson;
TArray<FQuartzUIAuditedApp> Apps;
TArray<FQuartzUIStagedFile> Files;
TArray<FQuartzUIValidationIssue> Issues;
};
/**
* Deterministic production-output policy shared by every non-interactive path.
* It validates already-built project output and never invokes Node, copies an
* app, installs dependencies, or writes below the installed plugin.
*/
class QUARTZUIEDITOR_API FQuartzUIProjectAuditService final
{
public:
static constexpr int32 SchemaVersion = 1;
static constexpr int32 PolicyVersion = 1;
/** JSON payload with a stageable suffix; Unreal UAT intentionally drops cooked .json files. */
static constexpr const TCHAR* BuildMetadataFilename = TEXT("quartzui.build.manifest");
static bool AuditProject(
const UQuartzUIProjectSettings& Settings,
const FQuartzUIProjectAuditOptions& Options,
FQuartzUIProjectAuditResult& OutResult);
/** Canonical per-app build metadata emitted by an external frontend build. */
static bool BuildCanonicalAppMetadata(
FName AppId,
const FString& EntryPage,
const FString& ContractFingerprint,
const FString& LocalizationFingerprint,
FString& OutJson);
/** Fingerprint of the configured generated localization authority. */
static bool ComputeLocalizationFingerprint(
const UQuartzUIProjectSettings& Settings,
const FString& ProjectDirectory,
FString& OutFingerprint,
TArray<FQuartzUIValidationIssue>& OutIssues);
};