paths: "packages/**": - If fixing bug, added test to cover scenario. - If addressing forum or Github issue, added link to description. "packages/**/*.ts": - Added unit tests to cover new or updated functionality. "**/*.vue": - Used composition API for all new components. - Added component or unit tests to cover functionality. # cli "packages/cli/src/databases/migrations/**": - Requested review from at least two engineers on migration. - Avoided irreversible data migrations. - Avoided deleting or updating data keys. - Wrote 'down' migration if possible. "n8n/packages/cli/src/api/**": - Added integration tests for new endpoints. # editor ui "packages/editor-ui/**/*.vue": - Added E2E if adding new features. - Used design system tokens (colors, spacings...) where possible. "packages/editor-ui/src/mixins/restApi.ts": - Avoided adding new methods. Only deleted from here. "packages/editor-ui/src/mixins/**": - Avoided adding new mixins (use composables instead). Only removed code from here. "packages/editor-ui/src/views/NodeView.vue": - Avoided adding code here. Only refactored to make it smaller. "packages/editor-ui/src/hooks/**": - Avoided adding new hooks. Only refactored to move hooks to relevant store instead. # nodes-base "packages/nodes-base/nodes/**": - Added workflow tests for nodes if possible. # design-system "packages/design-system/**/*.vue": - Used design system tokens (colors, spacings...) where possible. - Updated Storybook with new component or updated functionality. # e2e "cypress/e2e/**": - Avoided chaining commands more than two or three times (to avoid flakiness because only last one will be retried). - Spoofed endpoints that are not critical for the test (to avoid flakiness). - Picked most efficient path to start the test (for example skipped account setup and starting at /workflow/new for a canvas test). - Avoided adding waits on time (use request intercepts instead). - Ensured each spec does not depend on any another spec to pass.