Repository navigation
fix: preserve DashKit lifecycle and mobile item layouts - #328
Merged
daniil-filippov-dev merged 13 commits intoOct 30, 2026
Merged
daniil-filippov-dev merged 13 commits into
daniil-filippov-dev merged 13 commits into
Conversation
Contributor
|
Preview is ready. |
daniil-filippov-dev
marked this pull request as ready for review
October 23, 2026 08:44
daniil-filippov-dev
requested review from
Marginy605,
mournfulCoroner and
roberthovsepyan
as code owners
October 23, 2026 08:44
daniil-filippov-dev
marked this pull request as draft
October 26, 2026 15:34
This was referenced Oct 27, 2026
daniil-filippov-dev
marked this pull request as ready for review
October 27, 2026 09:42
korvin89
reviewed
Oct 27, 2026
korvin89
left a comment
Collaborator
There was a problem hiding this comment.
🤖 AI generated
This review was done with AI assistance. I validated every comment myself, but the wording — including the points I found myself — was written by the AI.
Severity legend
- 🔴 blocker — should be fixed before merge.
- 🟠 should-fix — a real problem; worth fixing before or right after merge. If you can't get to it now, please open an issue and leave a comment linking it.
- 🔵 nit — minor; author's discretion.
- ❓ question — I need more context; not necessarily a defect.
Comments not attached to the diff
🟠 should-fix — PR title. PRs land as squash commits titled after the PR (#326, #324). gravity-ui/release-action lists only feat/fix/perf in the changelog by default, so a refactor: commit gets no CHANGELOG entry and does not cut a release on its own. This PR changes user-visible behavior:
- no-op geometry changes no longer emit
change/onChange; onBeforeLoad/onItemRenderreadiness semantics change, and readiness is now reported after commit;- Text no longer renders stale markdown;
- compiled tests are no longer shipped in the npm package (10.5.2 contains
build/*/__tests__/*.test.js).
Retitle to fix: … (or split the behavior changes out).
daniil-filippov-dev
marked this pull request as draft
October 27, 2026 14:00
daniil-filippov-dev
marked this pull request as ready for review
October 27, 2026 14:51
korvin89
previously approved these changes
Oct 27, 2026
daniil-filippov-dev
marked this pull request as draft
October 27, 2026 15:36
daniil-filippov-dev
marked this pull request as ready for review
October 27, 2026 17:14
roberthovsepyan
approved these changes
Oct 28, 2026
korvin89
approved these changes
Oct 28, 2026
daniil-filippov-dev
deleted the
daniil-filippov-dev/UXRFC-664-gridstack-preparation
branch
October 30, 2026 13:54
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🤖 AI TLDR
Share DashKit lifecycle and readiness behavior while keeping legacy renderer as default. Plugins own suppression of obsolete load completions and retained visual notifications during newer pending loads.
🤖 AI-generated
Merge order: #328, #331, #333, #334, #335, #329, then #337. Merge this preparation first.
Extract shared lifecycle, registration, ref and event methods while retaining the legacy root entry. Ignore no-op geometry changes, handle same-id widget type replacement, and invalidate mobile item ordering when config items change under a stable layout reference. Remove the redundant direct
gulp-clidependency and orphan lock entries. No GridStack dependency, public renderer subpath or nested schema is introduced in this PR.onBeforeLoad()completion callbacks may be retained for visual updates after those updates commit. DashKit suppresses callbacks after unmount or item replacement. Plugins and wrappers must suppress superseded request completions and retained visual notifications while a newer load is pending. The zero-argument Item callback cannot distinguish an obsolete request from a valid later visual notification; it does not enforce pending-load suppression. The real Text plugin retains its request-generation checks. The wrapper and real Text regression covers pending-load suppression and post-commit notifications; it does not claim that a downstream application still fails this sequence.Validation: readiness source
ce2c22e7028d4cef207b19103b205a8eb346b282passed 115 Jest tests in 13 suites, types and build under Node 22. The combined review head33dcb4dbf33e08699c5a035bdbe1dd469fcce52bpassed 30 focused Jest tests and TypeScript. Independent local AI review reported no Standards finding and one description/comment contract mismatch. The one-comment clarificationcaeea2902a6ef81248f585b34d6b32169a995a50resolves that mismatch; the coordinator checked this bounded delta. Formatting and diff checks pass, and scoped lint adds no warning beyond the pre-existingno-explicit-anywarning.Published head
efab67234495c3dcf64f6001a88531720942df45, based on9c0fe0e655718a88b45df32e715fcdcd2f6b0e85. Exact-head GitHub checks observed at 2026-10-29T16:22:12 UTC: Verify Files, Tests (React 19), Build passed. React 18 was skipped by the release-only workflow guard, not runtime-tested. Workflow evidence: CI, PR Preview Build. GitHub reports APPROVED / CLEAN, with two submitted human approvals on this exact head. Existing readiness and dependency order remain unchanged; no merge or release is claimed.