Skip to main content

view-composition

Change or review UIKitUltra view composition internals inside the UIKitUltra source repository. Use for BodyBuilder, BodyBuilderItem, View+Body, View+Add, ForEach, stack insertion/removal, subscriptions, and composition diff behavior; not for ordinary downstream view construction.

Source facts

Repository
swiftstream/UIKitUltra
Last source activity
September 21, 2026 at 20:22
Detected SKILL.md language
English
Stars
628
Forks
36

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
view-composition
description
Change or review UIKitUltra view composition internals inside the UIKitUltra source repository. Use for BodyBuilder, BodyBuilderItem, View+Body, View+Add, ForEach, stack insertion/removal, subscriptions, and composition diff behavior; not for ordinary downstream view construction.
# Maintain UIKitUltra View Composition Use this LOCAL contributor skill for built-in composition/runtime source work. ## Load the smallest decision-complete context 1. Assume root/architecture/skill routing already selected this skill and `VIEW_COMPOSITION.md`; do not re-read `AGENTS.md`/`SKILL_INDEX.md` unless that context is genuinely missing or stale. 2. Use [`VIEW_COMPOSITION.md`](../../architecture/VIEW_COMPOSITION.md) as the primary owner. 3. Add only the supporting contract the change needs: - [`RUNTIME_MODEL.md`](../../architecture/RUNTIME_MODEL.md) for insertion/update lifecycle; - [`MUTATION_MODEL.md`](../../architecture/MUTATION_MODEL.md) for subscriptions/diff callbacks; - [`FLUENT_CHAIN_CONTRACT.md`](../../architecture/FLUENT_CHAIN_CONTRACT.md) for changed public composition APIs. 4. Use [`SOURCE_MAP.md`](../../SOURCE_MAP.md) only if the affected source location/ownership is not already known. ## Plan checklist - Identify affected composition entrypoints such as `body`, `addItem`, `add(views:at:)`, stack add paths, or `ForEach`. - Classify the impact as DSL, runtime, or cross-layer. - Identify subscription/diff handling changes and repeated-setup listener risk. - Preserve explicit insertion/removal ordering and object identity. ## Implementation rules - Preserve reference/object identity; do not introduce value-view copy semantics. - Keep insertion ordering explicit and consistent with current composition ownership. - If changing `ForEach` subscriptions, keep begin/listener/end update flow and listener ownership explicit. - Treat diff `modifications` handling as explicit policy; do not imply support that is not implemented. - Do not add a second composition/runtime model to compensate for one local edge case. ## Audit Verify: - fluent composition-facing chain continuity remains intact; - `ForEach` insertions/deletions and any intentionally supported modifications remain safe; - no hidden lifecycle regression appears in view/stack insertion/removal; - repeated setup does not silently accumulate listeners/subscriptions; - runtime docs change only if durable update timing/ownership actually changed; - unrelated source/governance remains untouched. Stop and re-plan if the work requires a new composition ownership/lifecycle mechanism rather than an implementation inside current UIKitUltra architecture.
View on GitHub