v1.6.0#50
Merged
Merged
Conversation
* feat(extension): harden DJ sync queue against bulk file changes Add coalescing delay, bulk-change detection, expanded git action coverage, activity-based git-pending window, and manifest reparse for bulk targeted syncs to prevent inconsistent state after git pull/checkout/restore and other mass file operations. * combine debounce for git operations with other mass changes to prevent multiple full sync getting queued.
Collaborator
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
ajayjayendran
approved these changes
Jun 2, 2026
dinpraka
approved these changes
Jun 3, 2026
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.
Changes
Agent Skills
dj.codingAgentis enabled, a new skill at.agents/skills/dj-migrate-ephemerals-to-ctes/SKILL.mdwalks an IDE agent through finding ephemeral.model.jsonfiles, deciding which ones can safely fold into their downstream consumers, applying the rewrite, and prompting you before any deletion. Ephemerals carrying Lightdash metadata or staging models that read from sources are flagged as unsafe so nothing is silently lost. Lets you say "audit the ephemerals under the sales group and migrate the qualifying ones" to dissolve redundant intermediate layers in one pass..model.jsonshapes through your AI assistant. Whendj.codingAgentis enabled, a new skill at.agents/skills/dj-review-and-refactor-model/SKILL.mdaudits a single model file (or a folder, dependency tree, or the whole workspace) and renders every finding upfront in two buckets — safe rewrites the agent can apply confidently, and judgment calls where it gives you the context and lets you pick. Nothing is edited until you confirm. Lets you say "review this model and modernize whatever's safe" and get a confirmation-driven cleanup pass that round-trips your existing Lightdash metadata, AI hints, tags, and free-formmetakeys.references/,scripts/, andassets/subdirectories are copied to.agents/skills/<skill>/alongside itsSKILL.md, matching the agentskills.io progressive-disclosure layout.Data Explorer — Lightdash lineage
mart_*models in the Data Explorer lineage graph. Each dashboard node lists its embedded charts in a popover, and saved charts that aren't part of any dashboard are bundled into a single Standalone Charts node per mart so the canvas stays tidy. Both nodes expose Open YAML (jump to the source file) and Open in Lightdash (deep link to the dashboard or chart in the Lightdash UI, whenLIGHTDASH_URLandLIGHTDASH_PROJECTare set). Lineage is built locally from Dashboards-as-Code YAML underdj.lightdash.dashboardsAsCodePathand refreshes when the files change — no API calls, no extradbtwork.dj.dataExplorer.showLightdashLineage(defaultfalse) and a matching header toggle in the Data Explorer panel opt into the Lightdash lineage layer, so projects that don't use Lightdash incur zero cost.Open Dashboards as Codeto download the YAML andRefreshto rebuild the lineage.Dashboards as Code
.gitignorehelper on the Download tab — newAdd path to .gitignorecheckbox (default off) idempotently appends the configureddj.lightdash.dashboardsAsCodePathto the workspace.gitignorebefore the download starts, so generated YAML stays out of version control. Entries land inside a short managed block (# dj…# /dj) so future DJ-managed paths can share the same region. Skips the write when the entry is already present and streams a single status line into the download log panel.Sync engine
git checkout,git pull,git restore ., and other mass file operations now batch into a single sync run instead of triggering many partial syncs, preventing inconsistent intermediate state. Sync also detectsgit rebase,git reset, and fast-forward operations the same way it already handlescheckoutandpull.