Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .changeset/config.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"changelog": ["@changesets/changelog-github", { "repo": "serverlessworkflow/editor" }],
"changelog": ["@changesets/changelog-github", { "repo": "open-workflow-specification/editor" }],
"commit": false,
"fixed": [["@serverlessworkflow/*"]],
"fixed": [["@openworkflowspec/*"]],
"access": "public",
"baseBranch": "main",
"updateInternalDependencies": "patch"
Expand Down
6 changes: 6 additions & 0 deletions .changeset/migrate-to-openworkflow.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
"@openworkflowspec/diagram-editor": minor
"@openworkflowspec/i18n": minor
---

Migrate from serverlessworkflow to openworkflow
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: CNCF Slack (#serverless-workflow)
- name: CNCF Slack (#open-workflow)
url: https://slack.cncf.io/
about: Join the CNCF Slack workspace and visit #serverless-workflow for real-time support.
about: Join the CNCF Slack workspace and visit #open-workflow for real-time support.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@ body:
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: "Implementation: Fully implemented according to the Open Workflow spec."
- label: "Unit Tests: Comprehensive unit tests are included and passing."
- 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."
- label: "Accessibility: UI changes comply with accessibility standards."
2 changes: 1 addition & 1 deletion .github/actions/setup-ci/action.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci_build.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci_check_license_headers.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci_codeql.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/prepare-release.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/publish-release.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -31,7 +31,7 @@ permissions:
jobs:
publish:
if: |
github.repository == 'serverlessworkflow/editor' &&
github.repository == 'open-workflow-specification/editor' &&
github.event.pull_request.merged == true &&
github.event.pull_request.user.login == 'github-actions[bot]' &&
github.event.pull_request.title == 'chore: version packages' &&
Expand Down
48 changes: 26 additions & 22 deletions .github/workflows/sync-issues-to-project.md
Comment thread
lornakelly marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<!--
Copyright 2021-Present The Serverless Workflow Specification Authors
Copyright 2021-Present The Open Workflow Specification Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand All @@ -26,10 +26,10 @@ are closed, and optionally imports pre-existing repo issues on demand.

## How it works

| Event | Action |
|---|---|
| Issue opened | Issue is added to the target project; initial field values are applied (skipped if `PSYNC_ENABLED=false` or `off`) |
| Issue closed | Project item Status is updated to the configured close status (skipped if `PSYNC_ENABLED=false` or `off`) |
| Event | Action |
| ------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| Issue opened | Issue is added to the target project; initial field values are applied (skipped if `PSYNC_ENABLED=false` or `off`) |
| Issue closed | Project item Status is updated to the configured close status (skipped if `PSYNC_ENABLED=false` or `off`) |
| `workflow_dispatch` | If `PSYNC_IMPORT_EXISTING=true`, imports all open repo issues not yet in the project with initial field values applied |

The project item is natively linked to the source issue — no custom fields are
Expand All @@ -44,6 +44,7 @@ needed. Clicking the item in the project board opens the original issue.
The PAT must belong to a user with access to the target org's project.

Required scopes:

- `project` — read/write access to GitHub Projects v2
- `read:org` — required to resolve the org's project by number
- `repo` (private repos) or `public_repo` (public repos) — required only if
Expand All @@ -56,22 +57,22 @@ Required scopes:

Go to **Repo → Settings → Secrets and variables → Actions → Secrets**:

| Name | Fallback name | Value |
|---|---|---|
| Name | Fallback name | Value |
| ----------- | -------------- | --------------------- |
| `PSYNC_PAT` | `GH_PAT_TOKEN` | The PAT created above |

### 3. Add the variables

Go to **Repo → Settings → Secrets and variables → Actions → Variables**:

| Name | Fallback name | Required | Default | Description | Example |
|---|---|---|---|---|---|
| `PSYNC_TARGET` | `GH_TARGET_PROJECT` | yes | — | Target project in `org:project_number` format | `my-org:1` |
| `PSYNC_INITIAL_VALUES` | `GH_ISSUE_INITIAL_VALUES` | no | — | Comma-separated `field=value` pairs applied to new project items | `Status=Backlog, Area=Tooling, Assignees=user1` |
| `PSYNC_CLOSE_STATUS` | `GH_ISSUE_CLOSE_STATUS` | no | `Done` | Status option name set on the project item when the issue is closed | `Done` |
| `PSYNC_ENABLED` | `GH_SYNC_ENABLED` | no | `true` | Set to `false` or `off` to pause syncing without removing the workflow | `false` |
| `PSYNC_IMPORT_EXISTING` | `GH_IMPORT_EXISTING_ISSUES` | no | `false` | Set to `true` and trigger manually to bulk-import all open issues not yet in the project | `true` |
| `PSYNC_AUTHORS_FILTER` | `GH_AUTHORS_FILTER` | no | — | Comma-separated list of GitHub usernames; only issues opened by these users are synced. Empty means all authors are included | `user1, user2` |
| Name | Fallback name | Required | Default | Description | Example |
| ----------------------- | --------------------------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| `PSYNC_TARGET` | `GH_TARGET_PROJECT` | yes | — | Target project in `org:project_number` format | `my-org:1` |
| `PSYNC_INITIAL_VALUES` | `GH_ISSUE_INITIAL_VALUES` | no | — | Comma-separated `field=value` pairs applied to new project items | `Status=Backlog, Area=Tooling, Assignees=user1` |
| `PSYNC_CLOSE_STATUS` | `GH_ISSUE_CLOSE_STATUS` | no | `Done` | Status option name set on the project item when the issue is closed | `Done` |
| `PSYNC_ENABLED` | `GH_SYNC_ENABLED` | no | `true` | Set to `false` or `off` to pause syncing without removing the workflow | `false` |
| `PSYNC_IMPORT_EXISTING` | `GH_IMPORT_EXISTING_ISSUES` | no | `false` | Set to `true` and trigger manually to bulk-import all open issues not yet in the project | `true` |
| `PSYNC_AUTHORS_FILTER` | `GH_AUTHORS_FILTER` | no | — | Comma-separated list of GitHub usernames; only issues opened by these users are synced. Empty means all authors are included | `user1, user2` |

> **Backward compatibility** — the workflow reads the `PSYNC_*` name first and
> falls back to the `GH_*` name when the new variable is not set. Existing setups
Expand Down Expand Up @@ -103,11 +104,11 @@ Status=Backlog, Area=Tooling, Assignees=user1

Supported field types:

| Field type | Behaviour |
|---|---|
| Single-select | Matches by option name |
| Text | Sets the text value directly |
| `Assignees` | Adds assignees to the source issue via the REST API; space-separate multiple users: `Assignees=user1 user2` |
| Field type | Behaviour |
| ------------- | ----------------------------------------------------------------------------------------------------------- |
| Single-select | Matches by option name |
| Text | Sets the text value directly |
| `Assignees` | Adds assignees to the source issue via the REST API; space-separate multiple users: `Assignees=user1 user2` |

> Number and date fields are not currently supported.

Expand All @@ -119,8 +120,8 @@ exist in the project (case-sensitive).

Default options required unless overridden:

| Option | Used when |
|---|---|
| Option | Used when |
| ------ | ----------------------------------- |
| `Done` | Issue closed (default close Status) |

---
Expand Down Expand Up @@ -160,6 +161,7 @@ gh api graphql -f query='
```

Common causes:

- The PAT does not have access to the target org's project
- The project number is wrong
- The org name in `PSYNC_TARGET` (or `GH_TARGET_PROJECT`) has a typo
Expand All @@ -169,12 +171,14 @@ Common causes:
If the issue is not already in the project when it is closed (e.g., it was opened before the workflow was installed, or the `opened` sync failed), the workflow automatically adds it to the project and then sets the close Status.

If the close path still fails, likely causes are:

- The PAT lacks `project` write access to the target org's project
- The project ID lookup failed (check `PSYNC_TARGET` (or `GH_TARGET_PROJECT`) format and PAT scopes)

### Status not updated on close

Verify the target project has:

- A single-select field named exactly `Status`
- An option matching the value of `PSYNC_CLOSE_STATUS` (or `GH_ISSUE_CLOSE_STATUS`, default: `Done`)

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/sync-issues-to-project.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright 2021-Present The Serverless Workflow Specification Authors
# Copyright 2021-Present The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion .husky/commit-msg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright 2026 The Serverless Workflow Specification Authors
# Copyright 2026 The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
2 changes: 1 addition & 1 deletion .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh
#
# Copyright 2026 The Serverless Workflow Specification Authors
# Copyright 2026 The Open Workflow Specification Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
Expand Down
4 changes: 2 additions & 2 deletions .syncpackrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,13 @@
"versionGroups": [
{
"label": "Ignore root package version",
"packages": ["serverless-workflow-editor"],
"packages": ["open-workflow-editor"],
"dependencyTypes": ["local"],
"isIgnored": true
},
{
"label": "Package versions must be consistent across packages",
"packages": ["@serverlessworkflow/*"],
"packages": ["@openworkflowspec/*"],
"dependencyTypes": ["packageVersion"],
"policy": "sameRange"
},
Expand Down
10 changes: 5 additions & 5 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
<!--
Copyright 2021-Present The Serverless Workflow Specification Authors
Copyright 2021-Present The Open Workflow Specification Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
Expand All @@ -16,4 +16,4 @@

# 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.
24 changes: 12 additions & 12 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<!--
Copyright 2021-Present The Serverless Workflow Specification Authors
Copyright 2021-Present The Open Workflow Specification Authors

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
Expand All @@ -14,11 +14,11 @@
limitations under the License.
-->

# Contributing to Serverless Workflow Editor
# Contributing to Open 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.
Thank you for your interest in contributing to the Open 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).
This project is the official, vendor-neutral visual editor for the [Open Workflow Specification](https://github.com/open-workflow-specification/specification).

---

Expand All @@ -35,7 +35,7 @@ The project is structured as a monorepo to support multiple distribution targets

```bash
# Clone the repository
git clone https://github.com/serverlessworkflow/editor.git
git clone https://github.com/open-workflow-specification/editor.git
cd editor

# Install dependencies
Expand Down Expand Up @@ -65,7 +65,7 @@ The project aims for the editor to be **embeddable**, with the core logic decoup

## 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/open-workflow-specification/editor/issues) first.

1. Open a new issue using the appropriate template.
2. Provide a clear description of the problem.
Expand Down Expand Up @@ -125,7 +125,7 @@ The project uses multiple testing strategies:
Unit tests are written using [Vitest](https://vitest.dev/) with React Testing Library. Tests mirror the source structure in `tests/`:

```bash
cd packages/serverless-workflow-diagram-editor
cd packages/open-workflow-diagram-editor
pnpm test
```

Expand All @@ -134,7 +134,7 @@ pnpm test
E2E tests use [Playwright](https://playwright.dev/) and are located in `tests-e2e/`:

```bash
cd packages/serverless-workflow-diagram-editor
cd packages/open-workflow-diagram-editor
pnpm test-e2e # Run tests headless
pnpm test-e2e:ui # Run with Playwright UI
```
Expand All @@ -151,15 +151,15 @@ pnpm playwright:install:ci
Run TypeScript type checking:

```bash
cd packages/serverless-workflow-diagram-editor
cd packages/open-workflow-diagram-editor
pnpm typecheck
```

## Continuous Integration

Pull requests automatically trigger:

- **Netlify Deploy Previews**: Storybook is automatically built and deployed for PRs that modify the `@serverlessworkflow/diagram-editor` package, allowing reviewers to preview changes interactively.
- **Netlify Deploy Previews**: Storybook is automatically built and deployed for PRs that modify the `@openworkflowspec/diagram-editor` package, allowing reviewers to preview changes interactively.
- **Automated Checks**: Linting, type checking, tests, and builds must pass before merging.

## Pull Request Process
Expand All @@ -178,7 +178,7 @@ Pull requests automatically trigger:
**Note:** If you don't have the `upstream` remote configured:

```bash
git remote add upstream https://github.com/serverlessworkflow/editor.git
git remote add upstream https://github.com/open-workflow-specification/editor.git
```

6. **Submit** a Pull Request (PR).
Expand All @@ -188,4 +188,4 @@ Pull requests automatically trigger:

### Community and Communication

Join the conversation on the [CNCF Slack](https://slack.cncf.io/) in the `#serverless-workflow` channel.
Join the conversation on the [CNCF Slack](https://slack.cncf.io/) in the `#open-workflow` channel.
Loading