Project codes
Since 0.6
The 45 diagnostics the project manifest validator (argus.project.json) can report.
Each code is prefixed project-, so a project diagnostic cannot be mistaken for a scene rule. Every code is an error unless its row says warning; a warning still lets the project open.
| Code | Severity | Meaning |
|---|---|---|
project-schema-shape | error | Not JSON, not an object, a wrong type, a missing field or an unknown key. |
project-schema-version-unsupported | error | schemaVersion is missing, not a whole number, newer than this build, or unknown. |
project-schema-version-outdated | error | schemaVersion is older and the migration registry can bring it forward. |
project-id | error | projectId is not a lowercase RFC 9562 UUID. |
project-application-id | error | application.id is not a lowercase reverse-DNS identifier. |
project-display-name | error | application.displayName is empty, whitespace, multi-line or too long. |
project-executable-name | error | application.executableName cannot be a file name on Windows, Linux and macOS alike. |
project-version | error | application.version is not SemVer 2.0.0 MAJOR.MINOR.PATCH[-PRERELEASE]. |
project-version-range | error | A version field is above 65535, so Windows VERSIONINFO cannot hold it. |
project-build-number | error | application.buildNumber is not a whole number from 0 to 65535. |
project-window-size | error | window.width or window.height is not a whole number in range. |
project-path-absolute | error | A path is absolute: a leading slash or backslash, or a drive letter. |
project-path-escapes | error | A path leaves the project root, by .. or through a symbolic link. |
project-path-form | error | A path is not in normalized form or has a segment Windows cannot store. |
project-path-missing | error | A path names nothing, names it with different case, or names a folder. |
project-startup-scene | error | startupScene exists but does not validate as a scene. |
project-ui-default-theme | error | settings.ui.defaultTheme is not a .css file under ui/theme/. |
project-ui-default-locale | error | settings.ui.defaultLocale is not a locale tag: a path, empty, or not BCP 47's shape. |
project-ui-start-screen | warning | The startup scene declares meta.ui.startScreen and the project ships no screen at all. A warning: the project still opens. |
project-icon-format | error | application.icon is not a structurally sound PNG (SVG is refused here too). |
project-icon-square | error | application.icon is not square. |
project-icon-size | error | application.icon is smaller than 256 or larger than 4096 pixels. |
project-icon-required | error | A release build has no application.icon. |
project-location | error | A resolver location is unusable: relative (the resolver never reads the working directory), a file that is not argus.project.json passed where a project is required, or something that is neither a file nor a folder. |
project-render-profile | error | render.profile is not a renderer this engine has: standard or hd. |
project-render-quality-preset | error | render.quality.preset (or a custom profile's based_on) is not a quality preset. |
project-render-quality-target-fps | error | render.quality.target_fps is outside 24..480 frames per second. |
project-render-quality-knob | error | A render.quality override or custom setting names a group or knob the HD renderer does not have. |
project-render-quality-type | error | A render.quality knob value has the wrong JSON type for its knob. |
project-render-quality-custom | error | render.quality.preset is custom without a custom profile, or a profile without basedOn misses required knobs. |
project-render-quality-without-hd | error | render.quality is set on a project whose render.profile is not hd. |
project-render-quality-custom-newer-knobs | warning | A custom profile without basedOn omits optional knobs (ones added after it could have been saved); they take their declared defaults. A warning: the profile is valid. |
project-default-invalid | error | A project default (physics, graphics.render, input, audio) that a scene rule refuses, as a scene that sets nothing of its own would take it. The message names the rule. |
project-render-quality-platform | warning | render.quality.platforms names no export target (windows, linux). A warning: a project written for a later target still loads. |
project-kind | error | kind is not a project kind this engine has: 3d or 2d. |
project-kind-2d-hd | warning | kind 2d with render.profile hd: a combination the project-type picker does not offer yet. A warning: the project loads and draws with the HD renderer. |
project-layers-invalid | error | layers is not a layer table: more than 32, a repeated or badly formed name, or the first not default (layers.ts). Layers and cameras, allotted 37. |
project-layers-unknown | error | A layers entry's ignores names a layer the table does not declare. Allotted 38. |
project-engine-saved-with | warning | savedWith is not MAJOR.MINOR.PATCH. A warning: the project opens, the upgrade check cannot read the field. Allotted 39. |
project-engine-saved-with-newer | warning | savedWith names a later engine series than the engine reading the project (the caller passes its own version as engineVersion). A warning: the project may use features this engine lacks. Allotted 40. |
project-export-app-id | error | export.appId is not valid on Android and iOS alike: fewer than two dot-separated segments, a segment that is not [A-Za-z][A-Za-z0-9_]*, or a Java keyword. Allotted 41. |
project-render-backend | error | render.backend is not a graphics backend this engine has: auto, vulkan or dx12. |
project-render-backend-unsupported | error | render.backend dx12 for a target other than Windows (export, launch). |
project-assets-provider | error | assets.generation.provider or assets.concept.imageProvider names a provider this engine does not have (tripo only for now). |
project-assets-value | error | An assets value is unusable: an unknown image model, an empty or multi-line style word, a budget that is not a known class, profile or whole number, or a spend cap that is not a number of dollars from 0. |