{"id":"language--yui-retained-rendering","name":"Retained custom rendering and exact damage","owner":"yeho","package":"language","kind":"language","signature":"state mutation -> dirty owner\ndirty owner -> retained fragment\nfragment + damage -> custom renderer\nunchanged tick -> zero lowering and presentation","description":"YUI owns one retained scene and renderer-neutral display commands. A mutation lowers only dirty owners, while semantic-only changes can update accessibility state without creating paint work.","context":"Treat state mutation as the source of exact visual and semantic work. Use inspection reports to verify what became dirty instead of rebuilding the whole interface by habit.","parameters":[],"returns":"","members":[],"tags":["complete-program","cpu","damage","dirty owner","display commands","language","resources","retained scene","windows","yeho","yui","yui-runtime"],"updated":"2026-09-09","source":{"repository":"yeho","path":"docs/yui/rendering-performance.md; docs/yui/testing-inspection-and-migration.md"},"status":"candidate","notes":["The command and resource contract covers clears, shapes, borders, text, icons, images, clips, transforms, layers, and targets.","Layout, theme, or density identity changes require an explicit reseed rather than hidden global work inside a dirty frame."],"examples":[{"id":"settings","title":"Complete native settings application","description":"A maintained YUI application with typed settings state, commands, controls, and a reusable component. All source files are included; Windows runtime qualification remains separate from a type check.","code":"using window\nusing time\nusing input.keyboard\nusing input.mouse\nusing ui\nusing frontend.yui\nusing frontend.yui.host.window\nusing frontend.yui.host.windows\n\nApplySettingsDomainAction(yuiAuthoredInteractionRuntime interaction, yuiAuthoredAction action) returns yuiAuthoredInteractionRuntime\n{\n    if !action.handled\n    {\n        return interaction\n    }\n    if action.command == \"settings.toggleCompact\" and !action.stateChanged\n    {\n        interaction.Activate(\"SettingsStudio.Content.Preferences.Compact\", \"\", \"shortcut\")\n    }\n    else if action.command == \"settings.toggleUpdates\" and !action.stateChanged\n    {\n        interaction.Activate(\"SettingsStudio.Content.Preferences.Updates\", \"\", \"shortcut\")\n    }\n    else if action.command == \"settings.save\"\n    {\n        Console.Log(Text.Format(\"settings.save: name={0}; compact={1}; updates={2}\", interaction.authored.StateValue(\"profile.name\"), interaction.authored.StateValue(\"preferences.compact\"), interaction.authored.StateValue(\"preferences.updates\")))\n    }\n    return interaction\n}\n\nSettingsAddDirtyOwner(list of text owners, text ownerId) returns list of text\n{\n    if Text.Length(ownerId) == 0 { return owners }\n    for existing in owners\n    {\n        if existing == ownerId { return owners }\n    }\n    owners.Add(ownerId)\n    return owners\n}\n\nSettingsHasDirtyOwner(list of text owners, text ownerId) returns bool\n{\n    for existing in owners\n    {\n        if existing == ownerId { return true }\n    }\n    return false\n}\n\nOpenWindow(\"YUI authored settings\", 1120, 760)\nwindowHandle mainWindow = CreateWindowHandle(1)\nyuiWindowsHostInputAdapter hostInput = CreateYuiWindowsHostInputAdapter(mainWindow)\nyuiAuthoredInteractionRuntime interaction = CreateYuiAuthoredInteractionRuntime(BuildSettingsStudioYuiRuntime(), \"settings.surface\", 6)\nyuiThemeDefinition theme = CreateYuiModernDarkTheme()\nbool tabWasDown = false\nbool leftWasDown = false\nbool rightWasDown = false\nbool upWasDown = false\nbool downWasDown = false\nbool enterWasDown = false\nbool spaceWasDown = false\nbool updatesWasDown = false\nbool saveWasDown = false\nbool escapeWasDown = false\n\nif !interaction.AddShortcut(CreateYuiCommandBinding(\"settings-updates\", \"\", \"Ctrl+U\", \"settings.toggleUpdates\", \"settings\")) or !interaction.AddShortcut(CreateYuiCommandBinding(\"settings-save\", \"\", \"Ctrl+S\", \"settings.save\", \"settings\"))\n{\n    Console.Error(interaction.diagnostic)\n}\n\nConsole.Log(interaction.authored.RenderReport())\nConsole.Log(interaction.authored.RenderAccessibilityReport())\nConsole.Log(\"authored-settings-controls: mouse=focus/activate; Tab/arrows=focus; Enter/Space=activate; Ctrl+U=updates; Ctrl+S=save; Escape=close\")\n\nyuiCanvasViewport viewport = CreateYuiFluidCanvasViewport(1120, 760)\nyuiAuthoredApplicationLayoutPlan plan = ResolveYuiAuthoredApplicationLayout(interaction.authored, 0, 0, viewport.designWidth, viewport.designHeight)\ninteraction.SyncLayout(plan.placements)\nyuiDisplayList display = BuildYuiAuthoredApplicationDisplayList(interaction.authored, theme, plan, interaction.input.hoverNodeId, interaction.input.pressedNodeId, interaction.focus.focusedNodeId)\n// Authored applications discover their window target's color capability from\n// the live graphics provider. `BuildYuiAuthoredApplicationComposition` is a\n// convenience wrapper that declares the legacy encoded-sRGB profile as a\n// constant, which does not present on a provider that enforces sRGB; the\n// `ForTarget` seam exists precisely so a host can supply the real one.\nAuthoredWindowTarget(int width, int height) returns yuiRenderTarget\n{\n    int targetWidth = width\n    int targetHeight = height\n    if targetWidth <= 0 { targetWidth = 1 }\n    if targetHeight <= 0 { targetHeight = 1 }\n    return CreateCurrentYuiCanvasWindowTargetV1(\"main\", targetWidth, targetHeight, \"surface.canvas\")\n}\n\nBuildAuthoredCompositionForCurrentProvider(yuiAuthoredRuntime runtime, yuiAuthoredApplicationLayoutPlan plan, yuiDisplayList display) returns yuiCompositionPlan\n{\n    yuiRenderTarget target = AuthoredWindowTarget(plan.width, plan.height)\n    return BuildYuiAuthoredApplicationCompositionForTarget(runtime, plan, display, target)\n}\n\nyuiCompositionPlan composition = BuildAuthoredCompositionForCurrentProvider(interaction.authored, plan, display)\nyuiRenderExecution headless = ExecuteYuiHeadlessRenderer(display, composition)\nyuiRenderExecution canvasModel = ExecuteYuiCanvasDisplayList(display, composition, false)\nbool rendererEquivalent = headless.StructureEquivalent(canvasModel)\nConsole.Log(RenderYuiCanvasDisplayListAdapterContract())\nConsole.Log(RenderYuiAuthoredDisplayListReport(interaction.authored, display, composition))\nConsole.Log(Text.Format(\"authored-settings-renderer-parity: equivalent={0}\", rendererEquivalent))\nif headless.diagnostic != \"ok\" or canvasModel.diagnostic != \"ok\" or !rendererEquivalent\n{\n    Process.Exit(41)\n}\nyuiVisualResolution retainedBackground = theme.Resolve(\"surface.canvas\", \"yeho-yui-authored-settings\")\nyuiAuthoredRetainedScheduler scheduler = SeedYuiAuthoredRetainedScheduler(interaction.authored, plan, display, \"settings.initial\")\nscheduler.ConfigureLowering(interaction.authored, theme)\nyuiRetainedFramePlan initialRetainedPlan = scheduler.cache.Plan()\nyuiPersistentCanvasExecutionV1 retainedExecution = ExecuteYuiPersistentCanvasStoredRetainedPlanV1(scheduler.resourceStore, initialRetainedPlan, true, retainedBackground.token.colorValue.red, retainedBackground.token.colorValue.green, retainedBackground.token.colorValue.blue, \"settings.initial\")\nbool initialPresented = scheduler.diagnostic == \"ok\" and retainedExecution.diagnostic == \"ok\" and retainedExecution.presented\nConsole.Log(Text.Format(\"authored-settings-retained-initial: owners={0}; commands={1}; rebuilt={2}; damage={3}; replay={4}; redraw={5}; present={6}; diagnostic={7}/{8}\", scheduler.seededOwners, scheduler.seededCommands, initialRetainedPlan.rebuiltOwners, initialRetainedPlan.damageRegionCount, initialRetainedPlan.replayedCommands, initialRetainedPlan.redraw, retainedExecution.presented, scheduler.diagnostic, retainedExecution.diagnostic))\nif !initialPresented or !YuiPersistentCanvasRetainedPlanCoversSurfaceV1(initialRetainedPlan, viewport.designWidth, viewport.designHeight) or scheduler.resourceStore.State() != \"open\" or scheduler.resourceStore.OwnerCount() != scheduler.seededOwners or scheduler.resourceStore.CommandCount() != scheduler.seededCommands or scheduler.resourceStore.EntryCount() == 0\n{\n    Process.Exit(42)\n}\n\nint started = MonotonicMicroseconds()\nbool smokeClose = YuiSmokeCloseRequested()\nbool verificationEvidenceRequired = Environment.Get(\"YEHO_YUI_AUTHORED_SETTINGS_VERIFY\") == \"1\"\nint previousWidth = viewport.designWidth\nint previousHeight = viewport.designHeight\ntext previousHoverNodeId = interaction.input.hoverNodeId\ntext previousPressedNodeId = interaction.input.pressedNodeId\ntext previousFocusedNodeId = interaction.focus.focusedNodeId\nbool observedDirtyPresent = false\nbool observedIdleSkip = false\nbool observedAuthoredOwnerLocal = false\nbool observedIdleZero = false\nbool verificationMutationInjected = false\nint interactionMutationRevision = 1000000\nint evidenceBindingsScanned = 0\nint evidenceOwnersLowered = 0\nint evidenceRebuilt = 0\nint evidenceReused = 0\nint evidenceDamage = 0\nint evidenceReplay = 0\nbool evidenceRedraw = false\nbool evidencePresent = false\nbool running = true\nbool closeRequested = false\nwhile running and WindowOpen()\n{\n    interaction.authored.BeginMutationBatch()\n    viewport = CreateYuiFluidCanvasViewport(1120, 760)\n    bool sizeChanged = viewport.designWidth != previousWidth or viewport.designHeight != previousHeight\n    if sizeChanged\n    {\n        plan = ResolveYuiAuthoredApplicationLayout(interaction.authored, 0, 0, viewport.designWidth, viewport.designHeight)\n        interaction.SyncLayout(plan.placements)\n    }\n\n    if verificationEvidenceRequired and observedIdleSkip and !verificationMutationInjected\n    {\n        yuiAuthoredAction verificationAction = interaction.Activate(\"SettingsStudio.Content.Preferences.Updates\", \"\", \"verification\")\n        interaction = ApplySettingsDomainAction(interaction, verificationAction)\n        verificationMutationInjected = verificationAction.stateChanged\n    }\n\n    int sourceX = YuiViewportSourceX(viewport, MouseX())\n    int sourceY = YuiViewportSourceY(viewport, MouseY())\n    yuiAuthoredInteractionResult pointerMove = interaction.HandlePointer(\"move\", \"mouse.primary\", sourceX, sourceY)\n    yuiWindowsHostInputEvent hostEvent = hostInput.Poll()\n    if hostEvent.changed and hostEvent.PointerEdge()\n    {\n        int eventSourceX = YuiViewportSourceX(viewport, hostEvent.pointer.localX)\n        int eventSourceY = YuiViewportSourceY(viewport, hostEvent.pointer.localY)\n        text pointerId = Text.Format(\"pointer.{0}\", hostEvent.pointer.pointerId)\n        if hostEvent.kind == \"pointer-down\"\n        {\n            yuiAuthoredInteractionResult pointerDown = interaction.HandlePointer(\"down\", pointerId, eventSourceX, eventSourceY)\n        }\n        else if hostEvent.kind == \"pointer-up\"\n        {\n            yuiAuthoredInteractionResult pointerUp = interaction.HandlePointer(\"up\", pointerId, eventSourceX, eventSourceY)\n            interaction = ApplySettingsDomainAction(interaction, pointerUp.action)\n        }\n        else if hostEvent.kind == \"pointer-cancel\"\n        {\n            yuiAuthoredInteractionResult pointerCancel = interaction.HandlePointer(\"cancel\", pointerId, eventSourceX, eventSourceY)\n        }\n    }\n\n    bool tabDown = IsKeyDown(\"tab\")\n    bool leftDown = IsKeyDown(\"left\")\n    bool rightDown = IsKeyDown(\"right\")\n    bool upDown = IsKeyDown(\"up\")\n    bool downDown = IsKeyDown(\"down\")\n    bool enterDown = IsKeyDown(\"enter\")\n    bool spaceDown = IsKeyDown(\"space\")\n    bool updatesDown = hostEvent.controlDown and IsKeyDown(\"u\")\n    bool saveDown = hostEvent.controlDown and IsKeyDown(\"s\")\n    bool escapeDown = IsKeyDown(\"escape\")\n    if tabDown and !tabWasDown\n    {\n        text tabKey = \"tab\"\n        if hostEvent.shiftDown\n        {\n            tabKey = \"shift+tab\"\n        }\n        yuiAuthoredInteractionResult tabAction = interaction.HandleKey(tabKey, \"\")\n    }\n    else if leftDown and !leftWasDown\n    {\n        yuiAuthoredInteractionResult leftAction = interaction.HandleKey(\"left\", \"\")\n    }\n    else if rightDown and !rightWasDown\n    {\n        yuiAuthoredInteractionResult rightAction = interaction.HandleKey(\"right\", \"\")\n    }\n    else if upDown and !upWasDown\n    {\n        yuiAuthoredInteractionResult upAction = interaction.HandleKey(\"up\", \"\")\n    }\n    else if downDown and !downWasDown\n    {\n        yuiAuthoredInteractionResult downAction = interaction.HandleKey(\"down\", \"\")\n    }\n    else if enterDown and !enterWasDown\n    {\n        yuiAuthoredInteractionResult enterAction = interaction.HandleKey(\"enter\", \"\")\n        interaction = ApplySettingsDomainAction(interaction, enterAction.action)\n    }\n    else if spaceDown and !spaceWasDown\n    {\n        yuiAuthoredInteractionResult spaceAction = interaction.HandleKey(\"space\", \"\")\n        interaction = ApplySettingsDomainAction(interaction, spaceAction.action)\n    }\n    else if updatesDown and !updatesWasDown\n    {\n        yuiAuthoredInteractionResult updatesAction = interaction.HandleKey(\"shortcut\", \"Ctrl+U\")\n        interaction = ApplySettingsDomainAction(interaction, updatesAction.action)\n    }\n    else if saveDown and !saveWasDown\n    {\n        yuiAuthoredInteractionResult saveAction = interaction.HandleKey(\"shortcut\", \"Ctrl+S\")\n        interaction = ApplySettingsDomainAction(interaction, saveAction.action)\n    }\n    else if escapeDown and !escapeWasDown\n    {\n        yuiAuthoredInteractionResult escapeAction = interaction.HandleKey(\"escape\", \"\")\n        closeRequested = true\n    }\n    tabWasDown = tabDown\n    leftWasDown = leftDown\n    rightWasDown = rightDown\n    upWasDown = upDown\n    downWasDown = downDown\n    enterWasDown = enterDown\n    spaceWasDown = spaceDown\n    updatesWasDown = updatesDown\n    saveWasDown = saveDown\n    escapeWasDown = escapeDown\n\n    bool authoredLayoutDirty = false\n    for receipt in interaction.authored.dirtyReceipts\n    {\n        if receipt.scope == \"layout\" { authoredLayoutDirty = true }\n    }\n    if authoredLayoutDirty and !sizeChanged\n    {\n        plan = ResolveYuiAuthoredApplicationLayout(interaction.authored, 0, 0, viewport.designWidth, viewport.designHeight)\n        interaction.SyncLayout(plan.placements)\n    }\n    bool hoverChanged = interaction.input.hoverNodeId != previousHoverNodeId\n    bool pressedChanged = interaction.input.pressedNodeId != previousPressedNodeId\n    bool focusChanged = interaction.focus.focusedNodeId != previousFocusedNodeId\n    bool fullReseed = sizeChanged or authoredLayoutDirty\n    if fullReseed\n    {\n        display = BuildYuiAuthoredApplicationDisplayList(interaction.authored, theme, plan, interaction.input.hoverNodeId, interaction.input.pressedNodeId, interaction.focus.focusedNodeId)\n        composition = BuildAuthoredCompositionForCurrentProvider(interaction.authored, plan, display)\n        headless = ExecuteYuiHeadlessRenderer(display, composition)\n        canvasModel = ExecuteYuiCanvasDisplayList(display, composition, false)\n        rendererEquivalent = rendererEquivalent and headless.StructureEquivalent(canvasModel)\n        scheduler = SeedYuiAuthoredRetainedScheduler(interaction.authored, plan, display, \"settings.resize-reseed\")\n        scheduler.ConfigureLowering(interaction.authored, theme)\n        yuiRetainedFramePlan reseedPlan = scheduler.cache.Plan()\n        retainedExecution = ExecuteYuiPersistentCanvasStoredRetainedPlanV1(scheduler.resourceStore, reseedPlan, true, retainedBackground.token.colorValue.red, retainedBackground.token.colorValue.green, retainedBackground.token.colorValue.blue, \"settings.resize-reseed\")\n        observedDirtyPresent = observedDirtyPresent or retainedExecution.presented\n        if headless.diagnostic != \"ok\" or canvasModel.diagnostic != \"ok\" or scheduler.diagnostic != \"ok\" or retainedExecution.diagnostic != \"ok\" or !retainedExecution.presented or !rendererEquivalent\n        {\n            Console.Error(Text.Format(\"authored-settings-renderer-error: headless={0}; canvas={1}; retained={2}/{3}; parity={4}\", headless.diagnostic, canvasModel.diagnostic, scheduler.diagnostic, retainedExecution.diagnostic, rendererEquivalent))\n            Process.Exit(43)\n        }\n    }\n    else\n    {\n        if !scheduler.BeginTick(interaction.authored, \"settings.owner-update\")\n        {\n            Console.Error(scheduler.diagnostic)\n            Process.Exit(43)\n        }\n        list of text scheduledVisualOwners = []\n        int authoredReceiptCount = interaction.authored.dirtyReceipts.count\n        if !scheduler.ApplyDirtyBatch(interaction.authored, theme, plan, interaction.input.hoverNodeId, interaction.input.pressedNodeId, interaction.focus.focusedNodeId)\n        {\n            Console.Error(scheduler.diagnostic)\n            Process.Exit(43)\n        }\n        for receipt in interaction.authored.dirtyReceipts\n        {\n            if receipt.scope != \"semantic\"\n            {\n                scheduledVisualOwners = SettingsAddDirtyOwner(scheduledVisualOwners, receipt.ownerId)\n            }\n        }\n        if authoredReceiptCount > 0\n        {\n            yuiRetainedFramePlan authoredOnlyPlan = scheduler.cache.Plan()\n            observedAuthoredOwnerLocal = scheduler.changedBindingsScanned == interaction.authored.lastMutationBindingsScanned and scheduler.receiptsScheduled == authoredReceiptCount and scheduler.ownersLowered == interaction.authored.lastMutationOwnersAffected and scheduler.resourceValidations == 0 and scheduler.resourcePayloadComparisons == 0 and scheduler.resourceEntriesAdded == 0 and authoredOnlyPlan.touchedOwners == interaction.authored.lastMutationOwnersAffected and authoredOnlyPlan.rebuiltOwners <= scheduler.ownersLowered\n            evidenceBindingsScanned = scheduler.changedBindingsScanned\n            evidenceOwnersLowered = scheduler.ownersLowered\n            evidenceRebuilt = authoredOnlyPlan.rebuiltOwners\n            evidenceReused = authoredOnlyPlan.reusedOwners\n            evidenceDamage = authoredOnlyPlan.damageRegionCount\n            evidenceReplay = authoredOnlyPlan.replayedCommands\n            evidenceRedraw = authoredOnlyPlan.redraw\n        }\n        list of text interactionDirtyOwners = []\n        if hoverChanged\n        {\n            interactionDirtyOwners = SettingsAddDirtyOwner(interactionDirtyOwners, previousHoverNodeId)\n            interactionDirtyOwners = SettingsAddDirtyOwner(interactionDirtyOwners, interaction.input.hoverNodeId)\n        }\n        if pressedChanged\n        {\n            interactionDirtyOwners = SettingsAddDirtyOwner(interactionDirtyOwners, previousPressedNodeId)\n            interactionDirtyOwners = SettingsAddDirtyOwner(interactionDirtyOwners, interaction.input.pressedNodeId)\n        }\n        if focusChanged\n        {\n            interactionDirtyOwners = SettingsAddDirtyOwner(interactionDirtyOwners, previousFocusedNodeId)\n            interactionDirtyOwners = SettingsAddDirtyOwner(interactionDirtyOwners, interaction.focus.focusedNodeId)\n        }\n        for ownerId in interactionDirtyOwners\n        {\n            if scheduler.cache.IndexOf(ownerId) >= 0 and !SettingsHasDirtyOwner(scheduledVisualOwners, ownerId)\n            {\n                interactionMutationRevision = interactionMutationRevision + 1\n                yuiAuthoredDirtyReceipt interactionReceipt = CreateYuiAuthoredDirtyReceipt(ownerId, \"interaction.visual\", \"paint\", interactionMutationRevision, \"settings.interaction\")\n                if !scheduler.ApplyReceipt(interaction.authored, theme, plan, interactionReceipt, interaction.input.hoverNodeId, interaction.input.pressedNodeId, interaction.focus.focusedNodeId)\n                {\n                    Console.Error(scheduler.diagnostic)\n                    Process.Exit(43)\n                }\n                scheduledVisualOwners = SettingsAddDirtyOwner(scheduledVisualOwners, ownerId)\n            }\n        }\n        yuiRetainedFramePlan retainedPlan = scheduler.cache.Plan()\n        retainedExecution = ExecuteYuiPersistentCanvasStoredRetainedPlanV1(scheduler.resourceStore, retainedPlan, false, retainedBackground.token.colorValue.red, retainedBackground.token.colorValue.green, retainedBackground.token.colorValue.blue, \"settings.owner-update\")\n        if retainedExecution.diagnostic != \"ok\"\n        {\n            Console.Error(Text.Format(\"authored-settings-retained-error: {0}\", retainedExecution.diagnostic))\n            Process.Exit(43)\n        }\n        if retainedPlan.present\n        {\n            observedDirtyPresent = observedDirtyPresent or retainedExecution.presented\n        }\n        if authoredReceiptCount > 0 { evidencePresent = retainedExecution.presented }\n        if retainedPlan.Idle() and scheduler.changedBindingsScanned == 0 and scheduler.ownersLowered == 0 and scheduler.commandsLowered == 0 and scheduler.resourceValidations == 0 and scheduler.resourceExplicitComparisons == 0 and scheduler.resourcePayloadComparisons == 0 and scheduler.resourceAdmissions == 0 and scheduler.resourceEntriesAdded == 0 and !retainedExecution.rendered and !retainedExecution.presented\n        {\n            observedIdleSkip = true\n            observedIdleZero = true\n        }\n    }\n    previousWidth = viewport.designWidth\n    previousHeight = viewport.designHeight\n    previousHoverNodeId = interaction.input.hoverNodeId\n    previousPressedNodeId = interaction.input.pressedNodeId\n    previousFocusedNodeId = interaction.focus.focusedNodeId\n    int elapsed = MonotonicMicroseconds() - started\n    bool verificationClose = verificationEvidenceRequired and elapsed >= 3000000\n    if closeRequested or verificationClose or smokeClose and elapsed >= YuiSmokeCloseAfterMicroseconds()\n    {\n        running = false\n        CloseWindow()\n    }\n}\nConsole.Log(Text.Format(\"authored-settings-retained-owner-evidence: bindings-scanned={0}; owners-lowered={1}; rebuilt={2}; reused={3}; damage={4}; replay={5}; redraw={6}; present={7}; owner-local={8}\", evidenceBindingsScanned, evidenceOwnersLowered, evidenceRebuilt, evidenceReused, evidenceDamage, evidenceReplay, evidenceRedraw, evidencePresent, observedAuthoredOwnerLocal))\nConsole.Log(Text.Format(\"authored-settings-retained-idle-evidence: scanned=0; lowered=0; rebuilt=0; damage=0; replay=0; redraw=false; present=false; observed={0}\", observedIdleZero))\nConsole.Log(Text.Format(\"authored-settings-frame-evidence: initial-present={0}; dirty-present={1}; idle-skip={2}; parity={3}; diagnostic={4}\", initialPresented, observedDirtyPresent, observedIdleSkip, rendererEquivalent, retainedExecution.diagnostic))\nif !initialPresented or !rendererEquivalent or retainedExecution.diagnostic != \"ok\" or (verificationEvidenceRequired and (!verificationMutationInjected or !observedDirtyPresent or !observedIdleSkip or !observedAuthoredOwnerLocal or !observedIdleZero))\n{\n    Process.Exit(44)\n}\n","manifest":"manifestVersion = \"2\"\npackage = \"api.example.yui_settings\"\nversion = \"0.1.0\"\nlanguageEdition = \"yeho-core-2026.1\"\n\n[app]\nkind = \"frontend\"\nconsole = false\n\n[frontend]\nkind = \"yui\"\nentry = \"ui/app.yui\"\n\n[[dependencies]]\npackage = \"frontend.yui\"\nversion = \"0.2.0\"\npath = \"../../../yeho/packages/frontend/yui\"\n\n[[dependencies]]\npackage = \"frontend.yui.host.window\"\nversion = \"0.2.0\"\npath = \"../../../yeho/packages/frontend/yui/host/window\"\n\n[[dependencies]]\npackage = \"frontend.yui.host.windows\"\nversion = \"0.2.0\"\npath = \"../../../yeho/packages/frontend/yui/host/windows\"\n\n[[dependencies]]\npackage = \"graphics.canvas\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/canvas\"\n\n[[dependencies]]\npackage = \"graphics.image\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/image\"\n\n[[dependencies]]\npackage = \"graphics.image.processing\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/image/processing\"\n\n[[dependencies]]\npackage = \"graphics.text\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/text\"\n\n[[dependencies]]\npackage = \"graphics.text.windows\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/graphics/text/windows\"\n\n[[dependencies]]\npackage = \"host.ui_services\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/host/ui_services\"\n\n[[dependencies]]\npackage = \"host.windows\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/host/windows\"\n\n[[dependencies]]\npackage = \"input.keyboard\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/input/keyboard\"\n\n[[dependencies]]\npackage = \"input.mouse\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/input/mouse\"\n\n[[dependencies]]\npackage = \"input.text\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/input/text\"\n\n[[dependencies]]\npackage = \"time\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/time\"\n\n[[dependencies]]\npackage = \"ui\"\nversion = \"0.2.0\"\npath = \"../../../yeho/packages/ui\"\n\n[[dependencies]]\npackage = \"window\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/window\"\n\n[[dependencies]]\npackage = \"window.multi\"\nversion = \"0.1.0\"\npath = \"../../../yeho/packages/window/multi\"\n","files":{"ui/app.yui":"import \"components/settings-section.yui\"\n\ncommands SettingsCommands {\n    settings.save = command\n    settings.toggleCompact = command\n    settings.toggleUpdates = command\n}\n\nstate SettingsState {\n    profile.name = \"Ari Morgan\"\n    profile.email = \"ari@starfish.local\"\n    preferences.compact = false\n    preferences.updates = true\n}\n\nslots SettingsSlots {\n    settings.profile = one\n    settings.preferences = one\n    settings.about = one\n}\n\nsurface SettingsStudio {\n    label = \"Settings Studio\"\n    theme = modern-dark\n    density = comfortable\n    layout = column\n\n    column Content {\n        spacing = 12\n        label Eyebrow { text = \"YEHO / YUI\" }\n        label Title { text = \"A calmer way to build software\" }\n        label Subtitle { text = \"This entire screen is lowered from modular .yui into one shared runtime tree.\" }\n\n        SettingsSection Profile {\n            heading = \"Profile\"\n            theme = modern-dark\n            slot = settings.profile\n            slot Content {\n                textBox Name { label = \"Display name\" value = profile.name }\n                textBox Email { label = \"Email\" value = profile.email }\n            }\n        }\n\n        SettingsSection Preferences {\n            heading = \"Preferences\"\n            tone = \"interactive\"\n            slot = settings.preferences\n            slot Content {\n                toggle Compact { text = \"Compact interface\" checked = preferences.compact command = settings.toggleCompact }\n                toggle Updates { text = \"Experimental updates\" checked = preferences.updates command = settings.toggleUpdates }\n            }\n        }\n\n        SettingsSection About {\n            heading = \"Runtime\"\n            slot = settings.about\n            slot Content {\n                label Backend { text = \"Kyber-ready, renderer-independent component state\" }\n            }\n        }\n\n        button Save { text = \"Save settings\" command = settings.save onClick = settings.save }\n    }\n}\n","ui/components/settings-section.yui":"component SettingsSection {\n    property heading { type = text required = true }\n    property tone { type = text default = \"quiet\" }\n    slot Content { required = true }\n}\n"},"tags":["cpu","yui","windows","complete-program"],"run":"cpu-oracle","verification":"type checked","sha256":"754424d950eded80192658f618677f8da6859edde0e109a536f94dea2464bf32","checked":"2026-09-09","diagnostic":"","observedOutput":null,"checkedBackend":null}],"searchTerms":[],"url":"https://demonhunterlabs.com/academy/api?item=language--yui-retained-rendering","json":"https://demonhunterlabs.com/reference/items/language--yui-retained-rendering.json","markdown":"https://demonhunterlabs.com/reference/text/language--yui-retained-rendering.md"}
