Skip to content

Use OmegaEdit data editor extension dependency#1726

Open
scholarsmate wants to merge 1 commit into
apache:mainfrom
ctc-oss:codex/omega-edit-data-editor-dependency
Open

Use OmegaEdit data editor extension dependency#1726
scholarsmate wants to merge 1 commit into
apache:mainfrom
ctc-oss:codex/omega-edit-data-editor-dependency

Conversation

@scholarsmate

@scholarsmate scholarsmate commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Tracks #1725.

Description

This replaces Daffodil's embedded Data Editor stack with an integration against the standalone OmegaEdit Data Editor VS Code extension.

  • declares ctc-oss.omega-edit-data-editor as an extensionDependencies entry
  • keeps Daffodil's existing extension.data.edit command and delegates opens to the OmegaEdit extension API
  • maps Daffodil daffodil.data debug events to OmegaEdit external current-byte highlights
  • removes the embedded Svelte Data Editor, OmegaEdit server/client lifecycle code, demos, runtime copy/patch scripts, and related npm dependencies
  • removes the old Data Editor port/logging launch configuration surface from the schema and launch wizard
  • updates tests, including a lightweight OmegaEdit fixture extension for VS Code integration tests

Wiki

  • I have added the following documentation for these changes

Updated repository documentation in README.md, DEVELOPMENT.md, and src/tests/README.md to describe the external Data Editor dependency and the narrower Daffodil integration surface.

Review Instructions including Screenshots

Review the new bridge in src/dataEditor/omegaEditDataEditor.ts and the manifest changes in package.json. The key behavior is that Daffodil still owns the extension.data.edit command and debugger event handling, while the standalone OmegaEdit extension owns the Data Editor UI/runtime.

Confirmation Testing

  • yarn install --ignore-scripts
  • yarn nodeclean; yarn gen-version-ts; yarn tsc -p ./; yarn vite:dev
  • yarn tsc -p ./
  • yarn lint
  • node ./out/tests/runTest.js (45 passing)
  • yarn check-missing-license-data
  • yarn check-license-compatibility

Note: the VS Code test runtime logged benign mutex/chat-registry messages while still exiting successfully.

Regression Testing

The VS Code integration test suite now installs a lightweight ctc-oss.omega-edit-data-editor fixture extension so Daffodil tests validate the extension dependency contract without starting the removed embedded editor stack.

@scholarsmate scholarsmate force-pushed the codex/omega-edit-data-editor-dependency branch from 0cc8ed3 to 4037c85 Compare June 18, 2026 23:13
@scholarsmate scholarsmate marked this pull request as ready for review June 18, 2026 23:44
@scholarsmate scholarsmate changed the title [codex] Use OmegaEdit data editor extension dependency Use OmegaEdit data editor extension dependency Jun 19, 2026
@scholarsmate scholarsmate requested a review from Copilot June 19, 2026 02:12
@scholarsmate scholarsmate self-assigned this Jun 19, 2026
@scholarsmate scholarsmate added dependencies Pull requests that update a dependency file requirements typescript data editor Issues related to the Data Editor capability labels Jun 19, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR migrates the Apache Daffodil VS Code extension from an embedded Ωedit Data Editor stack to an integration model that depends on the standalone ctc-oss.omega-edit-data-editor extension, while keeping Daffodil’s existing extension.data.edit command and debugger-driven current-byte highlighting behavior.

Changes:

  • Declares ctc-oss.omega-edit-data-editor as an extensionDependencies entry and adds a new bridge implementation (src/dataEditor/omegaEditDataEditor.ts) that opens files and sets external highlights via the dependency’s API.
  • Removes the embedded Svelte Data Editor UI/runtime, OmegaEdit server/client lifecycle code, launch configuration surface for Data Editor port/logging, and related build/test/package wiring.
  • Updates integration tests to use a lightweight fixture extension to validate the dependency contract.

Reviewed changes

Copilot reviewed 104 out of 112 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
vite.config.mjs Removes packaging/copy/externalization related to the embedded OmegaEdit client/server runtime.
src/utils.ts Removes default dataEditor debug config block and deletes obsolete server-kill helper.
src/tests/suite/utils.test.ts Updates expected default debug config to match removal of dataEditor config.
src/tests/suite/omegaEditClientLogger.test.ts Removes tests tied to the removed embedded @omega-edit/client logger patching.
src/tests/suite/dataEditor.test.ts Replaces embedded-editor tests with dependency/bridge tests and open/highlight checks.
src/tests/suite/daffodilDebugger.test.ts Removes dataEditor config plumbing from debugger test invocation.
src/tests/suite/daffodil.test.ts Updates comments to reflect new “data editor integration tests” terminology.
src/tests/runTest.ts Installs/loads an OmegaEdit fixture extension for VS Code integration tests.
src/tests/README.md Updates manual test guidance to focus on the external dependency and highlight integration.
src/tests/omegaEditServerLifecycle.ts Removes lifecycle test for the embedded OmegaEdit server.
src/tests/fixtures/omega-edit-data-editor/package.json Adds a lightweight fixture extension manifest for integration tests.
src/tests/fixtures/omega-edit-data-editor/extension.js Adds a fixture API implementation (open/state/highlights) for integration tests.
src/svelte/vite.config.mjs Removes embedded Svelte data editor build config.
src/svelte/vite-env.d.ts Removes embedded Svelte tooling types.
src/svelte/tsconfig.json Removes embedded Svelte TS config.
src/svelte/tests/utilities/display.test.ts Removes embedded Svelte unit tests.
src/svelte/tests/stores/index.test.ts Removes embedded Svelte store unit tests.
src/svelte/svelte.d.ts Removes embedded Svelte module typings.
src/svelte/svelte.config.mjs Removes embedded Svelte config.
src/svelte/src/views/dataEditor/index.ts Removes embedded Svelte data editor entrypoint.
src/svelte/src/utilities/vscode.ts Removes embedded webview VS Code API wrapper.
src/svelte/src/utilities/message.ts Removes embedded webview message protocol.
src/svelte/src/utilities/highlights.ts Removes embedded viewport highlight logic (now externalized to OmegaEdit).
src/svelte/src/utilities/elementKeypressEvents.ts Removes embedded UI keypress mapping utility.
src/svelte/src/utilities/display.ts Removes embedded display/validation utilities.
src/svelte/src/utilities/colorScheme.ts Removes embedded theme/color store.
src/svelte/src/utilities/ByteCategories/IIndication.ts Removes embedded byte-indication types.
src/svelte/src/utilities/ByteCategories/IByteCategory.ts Removes embedded byte category definitions.
src/svelte/src/utilities/ByteCategories/CategoryIndications.ts Removes embedded byte indication category registry.
src/svelte/src/stores/localStore.ts Removes embedded Svelte local store helper.
src/svelte/src/stores/configuration.ts Removes embedded Svelte configuration model/constants.
src/svelte/src/main.ts Removes embedded Svelte main entry.
src/svelte/src/Main.svelte Removes embedded Svelte main component.
src/svelte/src/global.d.ts Removes embedded Svelte global types.
src/svelte/src/components/ServerMetrics/ServerMetrics.svelte Removes embedded server heartbeat UI component.
src/svelte/src/components/Main.svelte Removes embedded Svelte component.
src/svelte/src/components/layouts/Tooltip.svelte Removes embedded Svelte component.
src/svelte/src/components/layouts/SidePanel.svelte Removes embedded Svelte component.
src/svelte/src/components/layouts/HelpIcon.svelte Removes embedded Svelte component.
src/svelte/src/components/layouts/Help.ts Removes embedded Svelte help model.
src/svelte/src/components/layouts/Help.svelte Removes embedded Svelte component.
src/svelte/src/components/layouts/FlexContainer.svelte Removes embedded Svelte layout component.
src/svelte/src/components/Inputs/Input/RadioEdit.svelte Removes embedded Svelte component.
src/svelte/src/components/Inputs/Input/Input.svelte Removes embedded Svelte component.
src/svelte/src/components/Inputs/Buttons/ToggleableButton.svelte Removes embedded Svelte component.
src/svelte/src/components/Inputs/Buttons/ConfigurationToggle.svelte Removes embedded Svelte component.
src/svelte/src/components/Inputs/Buttons/Button.svelte Removes embedded Svelte component.
src/svelte/src/components/Icons/ViewportVisibilityIcon.svelte Removes embedded Svelte component.
src/svelte/src/components/Header/Header.svelte Removes embedded Svelte component.
src/svelte/src/components/Header/fieldsets/Settings.svelte Removes embedded Svelte component.
src/svelte/src/components/Header/fieldsets/SearchReplace.ts Removes embedded Svelte search/replace state logic.
src/svelte/src/components/Header/fieldsets/FileMetrics.ts Removes embedded Svelte file metrics store.
src/svelte/src/components/Header/fieldsets/FileMetrics.svelte Removes embedded Svelte component.
src/svelte/src/components/Error/Error.ts Removes embedded Svelte error store implementation.
src/svelte/src/components/Error/Error.svelte Removes embedded Svelte component.
src/svelte/src/components/Editors/DataEditor.svelte Removes embedded Svelte component.
src/svelte/src/components/Debug/index.ts Removes embedded Svelte debug exports.
src/svelte/src/components/Debug/DebugOutput.svelte Removes embedded Svelte component.
src/svelte/src/components/Debug/Debug.svelte.ts Removes embedded Svelte debug context logic.
src/svelte/src/components/Debug/Debug.svelte Removes embedded Svelte debug UI.
src/svelte/src/components/DataDisplays/Header/DisplayHeader.svelte Removes embedded Svelte component.
src/svelte/src/components/DataDisplays/Fieldsets/ContentControls.svelte Removes embedded Svelte component.
src/svelte/src/components/DataDisplays/DataViewports.svelte Removes embedded Svelte component.
src/svelte/src/components/DataDisplays/CustomByteDisplay/FileTraversalIndicator.svelte Removes embedded Svelte component.
src/svelte/src/components/DataDisplays/CustomByteDisplay/DataValue.svelte Removes embedded Svelte component.
src/svelte/src/components/DataDisplays/CustomByteDisplay/BinaryData.ts Removes embedded viewport data model/utilities.
src/svelte/src/App.debug.svelte Removes embedded Svelte debug app wrapper.
src/svelte/package.json Removes embedded Svelte package placeholder.
src/svelte/index.html Removes embedded Svelte dev HTML.
src/svelte/global.d.ts Removes embedded Svelte global types.
src/launchWizard/script.js Removes Data Editor port/logging fields from launch wizard config generation.
src/launchWizard/launchWizard.ts Removes Data Editor settings UI block from launch wizard HTML generation.
src/dataEditor/svelteWebviewInitializer.ts Removes embedded Svelte webview initializer.
src/dataEditor/omegaEditDataEditor.ts Adds the new bridge to the external OmegaEdit Data Editor extension (open + highlight integration).
src/dataEditor/index.ts Re-exports the new bridge instead of the removed embedded client.
src/dataEditor/include/utils.ts Removes embedded data editor debug-session helper.
src/dataEditor/include/server/Sessions.ts Removes embedded server session lifecycle manager.
src/dataEditor/include/server/ServerInfo.ts Removes embedded server-info + port/checkpoint validation.
src/dataEditor/include/server/LogbackConfig.ts Removes embedded logback config generator.
src/dataEditor/include/server/heartbeat/index.ts Removes embedded heartbeat loop integration.
src/dataEditor/include/server/heartbeat/HeartBeatInfo.ts Removes embedded heartbeat data model.
src/dataEditor/demos/demo-infinite_scrolling.html Removes embedded demo artifact.
src/dataEditor/demos/demo-highlight_overlays.html Removes embedded demo artifact.
src/dataEditor/config/index.ts Removes embedded data editor config module exports.
src/dataEditor/config/Extract.ts Removes embedded config extraction logic.
src/dataEditor/config/ConfigKeyword.ts Removes embedded config keyword replacement helper.
src/dataEditor/config/Config.ts Removes embedded data editor config model/defaults/log path normalization.
src/classes/vscode-launch.ts Removes dataEditor config field from the debug configuration args interface.
src/classes/dataEditor.ts Removes the DataEditorConfig interface.
README.md Updates user-facing description to reflect external Ωedit Data Editor dependency and highlight integration.
package.json Removes embedded editor dependencies/scripts/schema and adds extensionDependencies.
LICENSE Removes license entries for assets that were deleted with the embedded Svelte editor.
DEVELOPMENT.md Updates development/test documentation to align with the external dependency and removed embedded stack.
build/yarn-scripts.ts Removes OmegaEdit runtime patch/sync logic and removes jq dependency for license listing.
build/package/NONOTICE Removes NONOTICE entries tied to the removed embedded OmegaEdit runtime packaging.
.prettierrc Removes the Svelte Prettier plugin now that Svelte sources are removed.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread src/dataEditor/omegaEditDataEditor.ts
Comment thread src/dataEditor/omegaEditDataEditor.ts
Comment thread src/tests/suite/dataEditor.test.ts
@scholarsmate scholarsmate force-pushed the codex/omega-edit-data-editor-dependency branch from 4037c85 to e32e5fd Compare June 19, 2026 03:01
@scholarsmate scholarsmate requested a review from Copilot June 19, 2026 03:03

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 104 out of 112 changed files in this pull request and generated 3 comments.

Comment thread src/dataEditor/omegaEditDataEditor.ts
Comment thread src/dataEditor/omegaEditDataEditor.ts Outdated
Comment thread src/tests/runTest.ts
@scholarsmate scholarsmate force-pushed the codex/omega-edit-data-editor-dependency branch from e32e5fd to a8e2315 Compare June 19, 2026 03:14
@scholarsmate scholarsmate requested a review from Copilot June 19, 2026 13:22

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 104 out of 112 changed files in this pull request and generated 2 comments.

Comment on lines +340 to +344
function dataPathLooksLikeUri(dataPath: string): boolean {
return (
/^[a-z][a-z0-9+.-]*:/i.test(dataPath) && !/^[a-z]:[\\/]/i.test(dataPath)
)
}
Comment thread build/yarn-scripts.ts
Comment on lines +192 to +196
return record.data.body
}
}

return []
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

data editor Issues related to the Data Editor capability dependencies Pull requests that update a dependency file requirements typescript

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants