Skip to content

Refine native motion and recipe save feedback - #36

Merged
1395490241lhj-code merged 1 commit into
mainfrom
codex/km-native-motion
Oct 22, 2026
Merged

1395490241lhj-code merged 1 commit into
mainfrom
codex/km-native-motion

Conversation

@1395490241lhj-code

@1395490241lhj-code 1395490241lhj-code commented Oct 22, 2026 •

Copy link
Copy Markdown
Owner

Home’s secondary recommendation controls did not consistently honor Reduce Motion, and link-import saving replaced its label with a differently sized spinner. This change reuses existing native feedback and introduces a presentation-only save label whose Idle / Processing / Success / Failure states keep a stable footprint.

Home keeps its view-aligned shelf, next-card peek, Accessibility-size vertical layout, navigation and task hierarchy. The secondary detail action has an explicit 44pt content target. Saving still uses the existing operation, error alert, retry rules, success haptic and immediate completion navigation. No animation timer or success hold is added.

Scope

  • Existing KitchenMotion presets stay unchanged; Morph and Feedback are aliases.
  • New save label, localized Home opt-ins, DEBUG-only isolated test fixtures, regression tests and conventions: 11 files.
  • No dependencies, schema, stores, provider routing, signing, flags, inventory undo or other transactional changes.
  • Local acceptance passed at bf4b461. Acceptance report.

Validation

Reused source-bound Xcode MCP evidence on iOS 27.2: build-for-testing succeeded; 60 current unit tests and 10 current UI methods passed across focused runs, including Light/Dark × normal/Accessibility XXXL, real save failure/retry/success, navigation and system Reduce Motion. These are distinct tests across runs, not a single full-suite result. Original xcresults were independently rechecked: 67/67, 4/4 and 3/3, zero failures/skips. The eight committed Swift files match the validated source manifest. The Node source-contract guard passed 13/13. Screenshot bundles remain local and are not added to Git.

The final build log has zero errors and three pre-existing compiler warning lines: actor isolation in AIRecommendationProviderTests.swift:218, a never-mutated variable in InventoryConsumptionPlannerTests.swift:576, and actor-isolated aiRecipeBaseServings access in SpecialPlanMenuTests.swift:82. All three also appear unchanged in the baseline log. They are documented, not silently fixed or described as zero diagnostics.

UNVERIFIED: VoiceOver speech delivery, actual focus traversal/order and restoration, and automatic state announcements. Dynamic labels, structural order and screenshots do not establish a listening pass. AXXXL regeneration animation timing, external generation completion, physical-device and Release validation are also outside local acceptance.

Cloud CI — exact accepted head

  • Web validation — run 39824629954: PASS, 2,013/2,013 tests on each of Node 22 and Node 24, zero failures/skips; recipe validations and production dependency audit succeeded. PR build/deploy jobs intentionally skipped.
  • iOS release configuration — run 39824629888: PASS, 27/27 release-tooling tests, zero failures/skips. The manual-only unsigned archive job was not run.
  • Native iOS — run 39824731508: PASS on hosted Xcode 26.6. Build-for-testing succeeded. Full unit target: 2,618 passed, 5 skipped, 0 failed (2,623 total). Selected native-motion/Home/import UI tests: 9 passed, 1 skipped, 0 failed (10 total). The existing workflow was explicitly dispatched because its automatic trigger covers claude/**, not codex/** or PRs.

The five unit skips are credential-gated HostedGuestMergeSmokeTests; hosted smoke credentials were not supplied. The UI skip is testSystemReduceMotionSaveFailureRetryAndSuccess, which requires the actual simulator setting to be enabled. Its earlier source-bound local system Reduce Motion evidence is reused; the hosted skip is not counted as a pass.

The full clean hosted build contains 74 compiler warning lines at 29 source locations, all outside the 11 changed files. This is a separate inventory from the three local incremental-build warnings above; no full baseline cloud warning comparison was run, and no warning cleanup is included.

CI exported 48 screenshots and uploaded screenshots (expires November 5) and raw test results/logs (expires October 29). Raw test results/logs are retained locally. Existing local visual acceptance is reused; these uploads do not establish a VoiceOver listening pass.

All three runs are bound to bf4b4610079d8abe859b0c92664078f6d6e2b8d4. No branch-protection required check names are configured; this does not waive the native integration gate. Optional baseline/full-UI jobs are outside this focused run.

Integration gate — completed

Owner-approved PR #36 was merged with a normal merge commit: 7962edc1b07b66b8533b6600753b77274f591567, parents 45b108d and accepted feature head bf4b4610079d8abe859b0c92664078f6d6e2b8d4. GitHub reports MERGED; the merge tree exactly matches the accepted head. The feature branch remains at bf4b461.

Documentation-only follow-up 207ca095311175b3ab5d09af037347c27f0ee94f updates PROJECT_STATUS.md and CHANGELOG.md, with native files unchanged. This was independently verified as the final remote main SHA. The original dirty checkout and unrelated worktrees were preserved.

Post-merge checks:

The Obsidian Current Status anchor and Next Actions are reconciled through 207ca09; the UI Design System records the integrated conventions. VoiceOver speech, actual focus traversal/restoration and automatic announcements remain UNVERIFIED. No new native release, physical-device or live-provider pass is claimed. No further EasyUI refinements were started.

Essential acceptance evidence is retained. Five byte-identical temporary MCP result copies were removed after durable-original hash and no-open-handle checks (13.92 MiB); nonidentical copies and curated screenshots remain. No large evidence bundles were added to Git.

@1395490241lhj-code
1395490241lhj-code merged commit 7962edc into main Oct 22, 2026
9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant