Fix workspace and desktop app-host vite resolution for ui table-dnd subpaths #276
Labels
No labels
abandoned
active
audit
blocked
data-safety
difficulty:easy
difficulty:hard
difficulty:high
difficulty:medium
docs
done
duplicate
notebook-v0
open
priority:high
ready
release-critical
safe-mode
spec
spec-backlog
subsystem:api
subsystem:backlog
subsystem:bases
subsystem:ci
subsystem:command
subsystem:configuration
subsystem:consolidate
subsystem:dependencies
subsystem:desktop-electron
subsystem:diffmerge
subsystem:docker
subsystem:docs
subsystem:fuzzy
subsystem:graph
subsystem:hotkeys
subsystem:lapis
subsystem:maint
subsystem:maintenance
subsystem:markdown
subsystem:markdown-lint
subsystem:md018
subsystem:notebook
subsystem:notifications
subsystem:opfs
subsystem:package
subsystem:plugin-markdown
subsystem:plugin-tasks
subsystem:plugins
subsystem:registry
subsystem:release
subsystem:renovate
subsystem:restore
subsystem:scripts
subsystem:search
subsystem:settings
subsystem:spec
subsystem:tasks
subsystem:testing
subsystem:ui
subsystem:web
subsystem:workspace
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lapis-notes/lapis#276
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Workspace and desktop smoke fail because app-host Vite configs duplicate the first-party source resolver without the
table-dnd/*subpath handlers added in #266.Problem
CI smoke boots workspace with a clean tree (no
packages/ui/dist). Plugin markdown and CSV import@lapis-notes/ui/table-dnd/sensorsand@lapis-notes/ui/table-dnd/utils. Package-local Vite configs resolve those viascripts/first-party-source-resolution.mjs, butpackages/workspace/vite.config.tsandpackages/desktop-electron/vite.config.tskeep inline registries that still miss the subpaths.Goal
App-host dev Vite resolves explicit UI table-dnd subpaths to source, and
check:source-resolutioncatches future drift between shared and app-host registries.Scope
table-dnd/utilsandtable-dnd/sensorshandlers to workspace and desktop-electron UIresolveSubpath.check-first-party-source-resolution.mjsto validate explicit subpath entrypoints through app-host Vite configs using real cross-package importers.Non-goals
Acceptance Criteria
@lapis-notes/ui/table-dnd/sensorsand/utilsto UI source files.pnpm check:source-resolutionfails if app-host registries drop explicit subpath handlers again.pnpm test:smokepasses (workspace boot reaches vault chooser without Vite transform errors).Implementation Notes
Mirror the handlers already present in
firstPartySourcePackagesfor@lapis-notes/uiinside both app-host vite configs. ExportfirstPartySourceExplicitSubpathEntrypointsand add an app-host leg to the source-resolution guard.Suggested Files or Specs To Inspect
packages/workspace/vite.config.tspackages/desktop-electron/vite.config.tsscripts/check-first-party-source-resolution.mjsscripts/first-party-source-resolution.mjsspec/src/30-cross-package-contracts/first-party-source-resolution.mdValidation Commands
pnpm check:source-resolutionpnpm test:scriptspnpm test:smokeRelated Issues
Follow-up Tasks
Implementation Summary
Added table-dnd/utils and table-dnd/sensors resolveSubpath handlers to workspace and desktop-electron vite configs; exported firstPartySourceExplicitSubpathEntrypoints and extended check-first-party-source-resolution to validate explicit subpaths through app-host Vite using real cross-package importers. Validated: pnpm check:source-resolution, pnpm test:scripts, make spec-lint, workspace test:e2e:smoke (3 passed).