128 lines
6.0 KiB
JSON
128 lines
6.0 KiB
JSON
{
|
|
"KSA": {
|
|
"AppTitle": "Kosmos Storage Audit",
|
|
"Menu": {
|
|
"Name": "Kosmos Storage Audit",
|
|
"Label": "Open Report",
|
|
"Hint": "Run the storage audit and inspect prioritized findings."
|
|
},
|
|
"Hero": {
|
|
"Title": "Kosmos Storage Audit",
|
|
"Intro1": "Checks local media paths from world documents, package packs, and manifests against {dataRoot} and {publicRoot}, and only reports broken-reference, non-package-to-package-reference, and orphan-file.",
|
|
"Intro2": "Regular world references to module or system assets are not reported if the target is visibly referenced by its owning package; wildcards are treated as valid as soon as at least one file matches.",
|
|
"Intro3": "orphan-file is checked for every discovered media file against the current reference set; known special cases like derived scene thumbnails, ChatMessages, and other transient sources are excluded."
|
|
},
|
|
"Action": {
|
|
"Run": "Start Analysis",
|
|
"Running": "Analyzing...",
|
|
"Export": "Export Report"
|
|
},
|
|
"Filter": {
|
|
"OrphansLabel": "Hide:",
|
|
"OrphansModules": "modules/*",
|
|
"OrphansSystems": "systems/*",
|
|
"OrphansCorePublic": "canvas/cards/icons/sounds/toolclips/ui"
|
|
},
|
|
"Progress": {
|
|
"Initialize": "Initializing analysis",
|
|
"Analyzing": "Analyzing",
|
|
"ScanFiles": "Scanning files",
|
|
"ReadReferences": "Reading references",
|
|
"ClassifyFindings": "Classifying findings",
|
|
"Completed": "Analysis complete",
|
|
"Current": "Current: {source}",
|
|
"Files": "Files: {count}",
|
|
"Sources": "Sources: {count}",
|
|
"References": "References: {count}",
|
|
"Findings": "Findings: {count}",
|
|
"BrowseStorage": "Browsing {storage}:{path}",
|
|
"ReadPack": "Reading package pack {pack}"
|
|
},
|
|
"Notify": {
|
|
"Completed": "Kosmos Storage Audit completed: {count} findings.",
|
|
"Failed": "Kosmos Storage Audit failed: {message}",
|
|
"OpenSourceFailed": "Could not open source: {uuid}"
|
|
},
|
|
"Notice": {
|
|
"Title": "Notes",
|
|
"InactiveModuleReferences": "The active world references files from inactive modules: {modules}",
|
|
"MissingModuleReferences": "The active world references files from module folders that Foundry does not currently recognize as installed modules: {modules}"
|
|
},
|
|
"Summary": {
|
|
"NoAnalysis": "No analysis has been run yet.",
|
|
"Files": "Files",
|
|
"References": "References",
|
|
"Findings": "Findings",
|
|
"Missing": "Missing",
|
|
"Deprecated": "Deprecated",
|
|
"Orphaned": "Orphaned",
|
|
"ByType": "Findings by Type",
|
|
"NoFindings": "No findings",
|
|
"WorkBlocks": "Work Blocks",
|
|
"MissingTargets": "Deduplicated missing targets",
|
|
"UnanchoredPackageTargets": "Unanchored package targets",
|
|
"OrphanCandidates": "Orphan candidates"
|
|
},
|
|
"Section": {
|
|
"WorkView": "Work View",
|
|
"NoGrouped": "No grouped findings available.",
|
|
"NoPrompt": "The analysis can be started directly from this view.",
|
|
"Running": "Analysis in progress...",
|
|
"Samples": "Examples",
|
|
"UnanchoredPackageTargets": "Deprecated",
|
|
"UnanchoredPackageTargetsDesc": "These targets live in module or system folders, are referenced from world data, but are currently not visibly referenced by their owning package. In practice they are usually either leftovers from older module versions or manual GM uploads in an unsuitable location. In the first case, re-initializing the module may clean up the world data.",
|
|
"BrokenTargets": "Missing",
|
|
"BrokenTargetsDesc": "These files are missing, but are currently referenced by objects.",
|
|
"OrphanCandidates": "Orphaned",
|
|
"OrphanCandidatesDesc": "These files still exist in storage, but are no longer used anywhere in the currently checked data."
|
|
},
|
|
"Field": {
|
|
"OwnerPackage": "Owning Package",
|
|
"Assessment": "Assessment",
|
|
"Target": "Target",
|
|
"Source": "Source"
|
|
},
|
|
"Table": {
|
|
"Severity": "Severity",
|
|
"References": "Refs",
|
|
"Note": "Note"
|
|
},
|
|
"FindingKind": {
|
|
"non-package-to-package-reference": "Unanchored package targets",
|
|
"broken-reference": "Broken targets",
|
|
"orphan-file": "Orphan candidates",
|
|
"risky-public-reference": "Risky public targets"
|
|
},
|
|
"Finding": {
|
|
"PackageExplanation": "World data points at a package asset for which no visible self-reference was found in manifests or package packs.",
|
|
"WildcardNoMatch": "Pattern reference: wildcard is supported by Foundry, but currently has no matching file in the scanned storage."
|
|
},
|
|
"Severity": {
|
|
"high": "High",
|
|
"warning": "Warning",
|
|
"info": "Info"
|
|
},
|
|
"FindingReason": {
|
|
"BrokenWildcard": "Wildcard reference {locator} did not match any files in the scanned roots.",
|
|
"BrokenReference": "Referenced file {locator} does not exist in the scanned roots.",
|
|
"UnanchoredPackageTarget": "{sourceOwner} references package-owned storage {locator}, but the asset is not visibly referenced by its owning package.",
|
|
"RiskyPublicTarget": "{sourceOwner} references release-public storage {locator}.",
|
|
"OrphanFile": "No incoming media reference was found for {locator}."
|
|
},
|
|
"FindingRecommendation": {
|
|
"CheckWildcard": "Check whether the wildcard pattern is still correct and whether matching files still exist.",
|
|
"CheckMissingFile": "Check whether the file was moved, deleted, or should be copied into a stable location.",
|
|
"MoveToStableStorage": "Review whether the file was manually placed into the package folder. If the package does not use it itself, prefer moving it into user-controlled storage.",
|
|
"CopyToStableStorage": "Prefer copying the asset into world or user-controlled storage.",
|
|
"ReviewOrMoveOrphan": "Review whether the file is safe to remove or should be moved into a stable storage location.",
|
|
"KeepAsReserve": "Review whether the file is intentionally kept as reserve content."
|
|
},
|
|
"Owner": {
|
|
"Unknown": "unknown"
|
|
},
|
|
"Export": {
|
|
"Filename": "kosmos-storage-audit-{timestamp}.json"
|
|
}
|
|
}
|
|
}
|