From 4ac4eeca7f6ad8337c64d68fed74cceba16766fc Mon Sep 17 00:00:00 2001 From: Ricardo Zanini Date: Mon, 2 Mar 2026 17:49:20 -0500 Subject: [PATCH 1/8] fix #11 - Governance, contribution, templates Signed-off-by: Ricardo Zanini --- .github/ISSUE_TEMPLATE/bug_report.yml | 44 +++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 5 ++ .github/ISSUE_TEMPLATE/feature_request.yml | 40 ++++++++++++ .github/ISSUE_TEMPLATE/question.yml | 22 +++++++ CODE_OF_CONDUCT.md | 11 ++++ CONTRIBUTING.md | 73 ++++++++++++++++++++++ GOVERNANCE.md | 14 +++++ 7 files changed, 209 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/ISSUE_TEMPLATE/question.yml create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md create mode 100644 GOVERNANCE.md diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..256bf4b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,44 @@ +name: Bug Report +description: Create a report to help us improve the editor +title: "[BUG]: " +labels: ["bug"] +body: + - type: textarea + id: bug-description + attributes: + label: Describe the Bug + description: A clear and concise description of what the bug is. + validations: + required: true + - type: textarea + id: reproduction + attributes: + label: To Reproduce + description: Steps to reproduce the behavior. + placeholder: | + 1. Open the editor... + 2. Upload workflow file... + 3. Click on... + validations: + required: true + - type: input + id: version + attributes: + label: Editor Version + description: What version of the editor/extension are you using? + - type: dropdown + id: platform + attributes: + label: Platform + options: + - Web / Browser + - VS Code Extension + - Chrome Extension + - Other + validations: + required: true + - type: textarea + id: context + attributes: + label: Additional Context + description: Add any other context, screenshots, or .sw.json / .sw.yaml snippets here. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..67b0d4c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: CNCF Slack (#serverless-workflow) + url: https://cloud-native.slack.com/archives/CMBAZQSEP + about: Join our Slack channel for real-time support. \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..43043c9 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,40 @@ +name: Feature Request +description: Propose a new feature or architectural change for the editor +title: "feat: <title>" +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + Thank you for suggesting a new feature! Please provide as much detail as possible. + - type: textarea + id: description + attributes: + label: Description + description: A clear and concise description of the proposed feature. + validations: + required: true + - type: textarea + id: motivation + attributes: + label: Motivation + description: Why is this change necessary? What problem does it solve? + validations: + required: true + - type: textarea + id: implementation + attributes: + label: Proposed Implementation + description: Describe the technical approach or UI changes. + - type: checkboxes + id: dod + attributes: + label: Definition of Done + description: To be considered "Done," this feature must meet the following criteria. + options: + - label: "Implementation: Fully implemented according to the Serverless Workflow spec." + - label: "Unit Tests: Comprehensive unit tests are included and passing." + - label: "Integration Tests: Verified within the monorepo and target envelopes (Web/VS Code)." + - label: "Documentation: Updated README.md, ADRs, or official docs." + - label: "Performance: No significant regression in editor responsiveness." + - label: "Accessibility: UI changes comply with accessibility standards." \ No newline at end of file diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml new file mode 100644 index 0000000..e368dfb --- /dev/null +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -0,0 +1,22 @@ +name: Question / General +description: Ask a question or share general feedback +title: "query: <title>" +labels: ["question"] +body: + - type: textarea + id: subject + attributes: + label: Subject + description: What would you like to discuss? + validations: + required: true + - type: textarea + id: context + attributes: + label: Context + description: Provide background information to help us provide a better answer. + - type: input + id: outcome + attributes: + label: Desired Outcome + description: Are you looking for a specific answer, a pointer to docs, or just starting a discussion? \ No newline at end of file diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..97a8526 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,11 @@ +# Code of Conduct + +We follow the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md). + +<!-- TODO: Decide who will handle Code of Conduct reports and replace [INSERT EMAIL ADDRESS] + with an email address in the paragraph below. We recommend using a mailing list to handle reports. + If your project isn't prepared to handle reports, remove the project email address and just have + reporters send to conduct@cncf.io. +--> +Please contact the [CNCF Code of Conduct Committee](mailto:conduct@cncf.io) +in order to report violations of the Code of Conduct. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..cd529c7 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,73 @@ +# Contributing to Serverless Workflow Editor + +Thank you for your interest in contributing to the CNCF Serverless Workflow Editor! We welcome all types of contributions, including bug reports, feature requests, documentation improvements, and code changes. + +This project is the official, vendor-neutral visual editor for the [Serverless Workflow Specification](https://github.com/serverlessworkflow/specification). + +--- + +## Prerequisites + +To build and run the editor locally, you will need: +- **Node.js** (v18.x or higher) +- **npm** or **Yarn** + +## Building the Project + +The project is structured as a monorepo to support multiple distribution targets (Web, VS Code, etc.) as defined in our architectural decisions. + +```bash +# Clone the repository +git clone https://github.com/serverlessworkflow/editor.git +cd editor + +# Install dependencies +npm install + +# Build all packages in the monorepo +npm run build +``` + +## Development Environment + +This project uses the following core technology stack: + +* **Language**: [TypeScript](https://www.typescriptlang.org/) (for type safety and maintainability) +* **Library**: [React](https://reactjs.org/) (for building the user interface) + +The editor is designed to be **embeddable**, meaning the core logic remains decoupled from specific platform APIs (like VS Code or Chrome APIs) through an abstraction layer. + +## Reporting an Issue + +If you find a bug or have a question, please check the [existing issues](https://github.com/serverlessworkflow/editor/issues) first. +1. Open a new issue using the appropriate template. +2. Provide a clear description of the problem. +3. Include steps to reproduce the bug and provide a sample workflow file (`.sw.json` or `.sw.yaml`) if applicable. + +## Suggesting a Change + +For new features or architectural changes: +1. Open an **Issue** or a **GitHub Discussion** to propose your idea. +2. Ensure the proposal aligns with the goals of being **vendor-neutral** and **specification-first**. +3. Once the approach is agreed upon by maintainers, you may proceed with a Pull Request. + +## Coding Standards + +* **TypeScript**: Always use strict typing. Avoid `any`. +* **Linting & Formatting**: This project uses **ESLint** and **Prettier**. Run `npm run lint` before submitting code. +* **Testing**: Ensure that logic changes are covered by unit tests. +* **Component Design**: Follow functional component patterns and ensure that UI state is managed predictably within the monorepo structure. + +## Pull Request Process + +1. **Fork** the repository and create your branch from `main`. +2. **Commit** your changes with clear, descriptive messages. +3. **Verify** your changes by running tests: `npm test`. +4. **Submit** a Pull Request (PR). +5. **DCO Sign-off**: As a CNCF project, all commits must be signed off (`git commit -s`) to certify the Developer Certificate of Origin. +6. **Review**: At least one maintainer must review and approve your PR before it is merged. + +--- + +### Community and Communication +Join the conversation on the [CNCF Slack](https://cloud-native.slack.com/) in the `#serverless-workflow` channel. \ No newline at end of file diff --git a/GOVERNANCE.md b/GOVERNANCE.md new file mode 100644 index 0000000..856fe26 --- /dev/null +++ b/GOVERNANCE.md @@ -0,0 +1,14 @@ +# Governance + +The Serverless Workflow Editor is a sub-project of the [Serverless Workflow Specification](https://github.com/serverlessworkflow/specification). + +As a CNCF project, we strictly follow the governance model, roles, and decision-making processes defined in the parent repository. + +Please refer to the primary governance document for details on contributor roles, maintainer appointments, and project policies: + +👉 **[Serverless Workflow Specification Governance](https://github.com/serverlessworkflow/specification/blob/main/GOVERNANCE.md)** + +--- + +## Community & Support +If you have questions regarding the governance or how to get involved, please join us on the [CNCF Slack](https://cloud-native.slack.com/) in the `#serverless-workflow` channel. From d387d84d519da6376c9a454fc7cd415a9e5e0ad6 Mon Sep 17 00:00:00 2001 From: Ricardo Zanini <1538000+ricardozanini@users.noreply.github.com> Date: Mon, 2 Mar 2026 17:56:46 -0500 Subject: [PATCH 2/8] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/config.yml | 4 ++-- CODE_OF_CONDUCT.md | 6 +----- CONTRIBUTING.md | 8 ++++---- GOVERNANCE.md | 2 +- 4 files changed, 8 insertions(+), 12 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 67b0d4c..494f1b1 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,5 +1,5 @@ blank_issues_enabled: false contact_links: - name: CNCF Slack (#serverless-workflow) - url: https://cloud-native.slack.com/archives/CMBAZQSEP - about: Join our Slack channel for real-time support. \ No newline at end of file + url: https://slack.cncf.io/ + about: Join the CNCF Slack workspace and visit #serverless-workflow for real-time support. \ No newline at end of file diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 97a8526..50df50a 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -2,10 +2,6 @@ We follow the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md). -<!-- TODO: Decide who will handle Code of Conduct reports and replace [INSERT EMAIL ADDRESS] - with an email address in the paragraph below. We recommend using a mailing list to handle reports. - If your project isn't prepared to handle reports, remove the project email address and just have - reporters send to conduct@cncf.io. ---> + Please contact the [CNCF Code of Conduct Committee](mailto:conduct@cncf.io) in order to report violations of the Code of Conduct. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index cd529c7..1058ac4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -54,15 +54,15 @@ For new features or architectural changes: ## Coding Standards * **TypeScript**: Always use strict typing. Avoid `any`. -* **Linting & Formatting**: This project uses **ESLint** and **Prettier**. Run `npm run lint` before submitting code. -* **Testing**: Ensure that logic changes are covered by unit tests. +* **Linting & Formatting**: Follow the existing code style and formatting conventions used in the files you are editing. If the package you are changing defines linting or formatting scripts, run those before submitting code. +* **Testing**: Ensure that logic changes are covered by tests, and run the relevant test commands for the packages you modify (see their documentation or `package.json`). * **Component Design**: Follow functional component patterns and ensure that UI state is managed predictably within the monorepo structure. ## Pull Request Process 1. **Fork** the repository and create your branch from `main`. 2. **Commit** your changes with clear, descriptive messages. -3. **Verify** your changes by running tests: `npm test`. +3. **Verify** your changes by running the appropriate build and/or test commands for the packages you modified. 4. **Submit** a Pull Request (PR). 5. **DCO Sign-off**: As a CNCF project, all commits must be signed off (`git commit -s`) to certify the Developer Certificate of Origin. 6. **Review**: At least one maintainer must review and approve your PR before it is merged. @@ -70,4 +70,4 @@ For new features or architectural changes: --- ### Community and Communication -Join the conversation on the [CNCF Slack](https://cloud-native.slack.com/) in the `#serverless-workflow` channel. \ No newline at end of file +Join the conversation on the [CNCF Slack](https://slack.cncf.io/) in the `#serverless-workflow` channel. \ No newline at end of file diff --git a/GOVERNANCE.md b/GOVERNANCE.md index 856fe26..db2349e 100644 --- a/GOVERNANCE.md +++ b/GOVERNANCE.md @@ -11,4 +11,4 @@ Please refer to the primary governance document for details on contributor roles --- ## Community & Support -If you have questions regarding the governance or how to get involved, please join us on the [CNCF Slack](https://cloud-native.slack.com/) in the `#serverless-workflow` channel. +If you have questions regarding the governance or how to get involved, please join us on the [CNCF Slack](https://slack.cncf.io/) in the `#serverless-workflow` channel. From a29d9878b810cfc738e9518bc88945ec6b8cb905 Mon Sep 17 00:00:00 2001 From: Ricardo Zanini <1538000+ricardozanini@users.noreply.github.com> Date: Tue, 3 Mar 2026 10:48:54 -0500 Subject: [PATCH 3/8] Upgrade Node.js version Co-authored-by: Jean-Baptiste Bianchi <72747835+JBBianchi@users.noreply.github.com> --- CONTRIBUTING.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 1058ac4..9d6013f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -9,7 +9,7 @@ This project is the official, vendor-neutral visual editor for the [Serverless W ## Prerequisites To build and run the editor locally, you will need: -- **Node.js** (v18.x or higher) +- **Node.js** (v24.x or higher) - **npm** or **Yarn** ## Building the Project From db0d5a7690becf5054b05be3201421a238f52b87 Mon Sep 17 00:00:00 2001 From: Ricardo Zanini <1538000+ricardozanini@users.noreply.github.com> Date: Tue, 3 Mar 2026 11:00:27 -0500 Subject: [PATCH 4/8] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/question.yml | 2 +- CONTRIBUTING.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/question.yml b/.github/ISSUE_TEMPLATE/question.yml index e368dfb..81fa882 100644 --- a/.github/ISSUE_TEMPLATE/question.yml +++ b/.github/ISSUE_TEMPLATE/question.yml @@ -1,6 +1,6 @@ name: Question / General description: Ask a question or share general feedback -title: "query: <title>" +title: "question: <title>" labels: ["question"] body: - type: textarea diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9d6013f..c06a912 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -33,7 +33,7 @@ npm run build This project uses the following core technology stack: * **Language**: [TypeScript](https://www.typescriptlang.org/) (for type safety and maintainability) -* **Library**: [React](https://reactjs.org/) (for building the user interface) +* **Library**: [React](https://react.dev/) (for building the user interface) The editor is designed to be **embeddable**, meaning the core logic remains decoupled from specific platform APIs (like VS Code or Chrome APIs) through an abstraction layer. From 88065316f058ce7e643c272378079ba17a88cc63 Mon Sep 17 00:00:00 2001 From: Ricardo Zanini <1538000+ricardozanini@users.noreply.github.com> Date: Thu, 5 Mar 2026 10:34:40 -0500 Subject: [PATCH 5/8] Apply @fantonangeli suggestions from code review Co-authored-by: Fabrizio Antonangeli <fabrizio.antonangeli@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/bug_report.yml | 2 +- .github/ISSUE_TEMPLATE/feature_request.yml | 2 +- CONTRIBUTING.md | 3 ++- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 256bf4b..41f48fd 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -13,7 +13,7 @@ body: - type: textarea id: reproduction attributes: - label: To Reproduce + label: Step to reproduce description: Steps to reproduce the behavior. placeholder: | 1. Open the editor... diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml index 43043c9..47c4719 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.yml +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -34,7 +34,7 @@ body: options: - label: "Implementation: Fully implemented according to the Serverless Workflow spec." - label: "Unit Tests: Comprehensive unit tests are included and passing." - - label: "Integration Tests: Verified within the monorepo and target envelopes (Web/VS Code)." + - label: "Integration Tests: Verified within the monorepo and target environments (Web/VS Code)." - label: "Documentation: Updated README.md, ADRs, or official docs." - label: "Performance: No significant regression in editor responsiveness." - label: "Accessibility: UI changes comply with accessibility standards." \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c06a912..a3281d1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -10,7 +10,7 @@ This project is the official, vendor-neutral visual editor for the [Serverless W To build and run the editor locally, you will need: - **Node.js** (v24.x or higher) -- **npm** or **Yarn** +- **npm** or **pnpm** ## Building the Project @@ -57,6 +57,7 @@ For new features or architectural changes: * **Linting & Formatting**: Follow the existing code style and formatting conventions used in the files you are editing. If the package you are changing defines linting or formatting scripts, run those before submitting code. * **Testing**: Ensure that logic changes are covered by tests, and run the relevant test commands for the packages you modify (see their documentation or `package.json`). * **Component Design**: Follow functional component patterns and ensure that UI state is managed predictably within the monorepo structure. +* **New package creation**: If a new package needs to be created, please follow the standards used by the existing packages, including the standard commands `build`, `build-prod`, `test`, `e2e-test`, `lint` ## Pull Request Process From 30c9d4ec094d60d186ee3f6f0cd087362435f98a Mon Sep 17 00:00:00 2001 From: Ricardo Zanini <ricardozanini@gmail.com> Date: Thu, 5 Mar 2026 11:02:28 -0500 Subject: [PATCH 6/8] Add expected behavior Signed-off-by: Ricardo Zanini <ricardozanini@gmail.com> --- .github/ISSUE_TEMPLATE/bug_report.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 41f48fd..60831a1 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -1,6 +1,6 @@ name: Bug Report description: Create a report to help us improve the editor -title: "[BUG]: <title>" +title: "bug: <title>" labels: ["bug"] body: - type: textarea @@ -21,6 +21,13 @@ body: 3. Click on... validations: required: true + - type: textarea + id: expected-behavior + attributes: + label: Expected Behavior + description: A clear and concise description of what you expected to happen. + validations: + required: true - type: input id: version attributes: From fdef47d5e6de4968c7198be6dd9a1049e4d0aac1 Mon Sep 17 00:00:00 2001 From: Ricardo Zanini <1538000+ricardozanini@users.noreply.github.com> Date: Thu, 5 Mar 2026 11:04:55 -0500 Subject: [PATCH 7/8] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/bug_report.yml | 2 +- CODE_OF_CONDUCT.md | 6 +----- CONTRIBUTING.md | 2 +- 3 files changed, 3 insertions(+), 7 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index 60831a1..8cdb0f3 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -13,7 +13,7 @@ body: - type: textarea id: reproduction attributes: - label: Step to reproduce + label: Steps to reproduce description: Steps to reproduce the behavior. placeholder: | 1. Open the editor... diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index 50df50a..9342e61 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,7 +1,3 @@ # Code of Conduct -We follow the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md). - - -Please contact the [CNCF Code of Conduct Committee](mailto:conduct@cncf.io) -in order to report violations of the Code of Conduct. +We follow the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/main/code-of-conduct.md). Please contact the [CNCF Code of Conduct Committee](mailto:conduct@cncf.io) in order to report violations of the Code of Conduct. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a3281d1..ef21140 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -9,7 +9,7 @@ This project is the official, vendor-neutral visual editor for the [Serverless W ## Prerequisites To build and run the editor locally, you will need: -- **Node.js** (v24.x or higher) +- **Node.js** (current LTS version; see https://nodejs.org/) - **npm** or **pnpm** ## Building the Project From 178e610d1bbfff2e7a7957cea5e0c1836c9475ef Mon Sep 17 00:00:00 2001 From: Ricardo Zanini <1538000+ricardozanini@users.noreply.github.com> Date: Thu, 5 Mar 2026 11:15:12 -0500 Subject: [PATCH 8/8] Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- CONTRIBUTING.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index ef21140..78fe251 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -35,11 +35,11 @@ This project uses the following core technology stack: * **Language**: [TypeScript](https://www.typescriptlang.org/) (for type safety and maintainability) * **Library**: [React](https://react.dev/) (for building the user interface) -The editor is designed to be **embeddable**, meaning the core logic remains decoupled from specific platform APIs (like VS Code or Chrome APIs) through an abstraction layer. +The project aims for the editor to be **embeddable**, with the core logic decoupled from specific platform APIs (like VS Code or Chrome APIs) through an abstraction layer. ## Reporting an Issue -If you find a bug or have a question, please check the [existing issues](https://github.com/serverlessworkflow/editor/issues) first. +If you find a bug or have a question, please check the [existing issues](https://github.com/serverlessworkflow/editor/issues) first. 1. Open a new issue using the appropriate template. 2. Provide a clear description of the problem. 3. Include steps to reproduce the bug and provide a sample workflow file (`.sw.json` or `.sw.yaml`) if applicable.