mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-25 14:25:02 +00:00
feat(migration): migrate 67 workflows to n8n schema format
- Migrated 67/72 workflows from MetaBuilder JSON Script to n8n schema - All migrated workflows now conform to schemas/n8n-workflow.schema.json - Key transformations applied: * Edges array → adjacency map connections format * Added required n8n node properties (name, typeVersion, position) * Converted trigger object → triggers array with explicit declaration * Preserved original node logic and parameters * Maintained tenantId filtering for multi-tenant safety - Created backup files (.backup.json/.backup.jsonscript) for all 67 migrated workflows - Migration script fixed to handle edge cases in node ID conversion 5 workflows skipped due to JSON syntax errors (minified with unescaped operators): - reset-password.jsonscript - list-users.jsonscript - delete-user.jsonscript - list-scripts.jsonscript - export-script.jsonscript These 5 files need manual cleanup to fix JSON syntax before migration. Migration impact: - 67 workflows now compatible with n8n tooling and executors - First-class variable support enabled via schema - Adjacency map connections enable more complex DAG workflows - Zero functional regression - all logic preserved Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,242 @@
|
||||
{
|
||||
"name": "String Plugins Test Suite",
|
||||
"active": false,
|
||||
"nodes": [
|
||||
{
|
||||
"id": "test_concat",
|
||||
"name": "Test Concat",
|
||||
"type": "string.concat",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
0,
|
||||
0
|
||||
],
|
||||
"parameters": {
|
||||
"strings": [
|
||||
"Hello",
|
||||
"World"
|
||||
],
|
||||
"separator": " "
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "assert_concat",
|
||||
"name": "Assert Concat",
|
||||
"type": "test.assert_equals",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
300,
|
||||
0
|
||||
],
|
||||
"parameters": {
|
||||
"actual": "$test_concat.result",
|
||||
"expected": "Hello World",
|
||||
"message": "string.concat should join strings"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "test_upper",
|
||||
"name": "Test Upper",
|
||||
"type": "string.upper",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
0,
|
||||
100
|
||||
],
|
||||
"parameters": {
|
||||
"text": "hello"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "assert_upper",
|
||||
"name": "Assert Upper",
|
||||
"type": "test.assert_equals",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
300,
|
||||
100
|
||||
],
|
||||
"parameters": {
|
||||
"actual": "$test_upper.result",
|
||||
"expected": "HELLO",
|
||||
"message": "string.upper should uppercase text"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "test_lower",
|
||||
"name": "Test Lower",
|
||||
"type": "string.lower",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
0,
|
||||
200
|
||||
],
|
||||
"parameters": {
|
||||
"text": "WORLD"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "assert_lower",
|
||||
"name": "Assert Lower",
|
||||
"type": "test.assert_equals",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
300,
|
||||
200
|
||||
],
|
||||
"parameters": {
|
||||
"actual": "$test_lower.result",
|
||||
"expected": "world",
|
||||
"message": "string.lower should lowercase text"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "test_split",
|
||||
"name": "Test Split",
|
||||
"type": "string.split",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
0,
|
||||
300
|
||||
],
|
||||
"parameters": {
|
||||
"text": "a,b,c",
|
||||
"separator": ","
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "assert_split_length",
|
||||
"name": "Assert Split Length",
|
||||
"type": "list.length",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
300,
|
||||
300
|
||||
],
|
||||
"parameters": {
|
||||
"items": "$test_split.result"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "assert_split",
|
||||
"name": "Assert Split Count",
|
||||
"type": "test.assert_equals",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
600,
|
||||
300
|
||||
],
|
||||
"parameters": {
|
||||
"actual": "$assert_split_length.result",
|
||||
"expected": 3,
|
||||
"message": "string.split should split into array"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "test_length",
|
||||
"name": "Test Length",
|
||||
"type": "string.length",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
0,
|
||||
400
|
||||
],
|
||||
"parameters": {
|
||||
"text": "Hello"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "assert_length",
|
||||
"name": "Assert Length",
|
||||
"type": "test.assert_equals",
|
||||
"typeVersion": 1,
|
||||
"position": [
|
||||
300,
|
||||
400
|
||||
],
|
||||
"parameters": {
|
||||
"actual": "$test_length.result",
|
||||
"expected": 5,
|
||||
"message": "string.length should return character count"
|
||||
}
|
||||
}
|
||||
],
|
||||
"connections": {
|
||||
"Test Concat": {
|
||||
"main": {
|
||||
"0": [
|
||||
{
|
||||
"node": "Assert Concat",
|
||||
"type": "main",
|
||||
"index": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"Test Upper": {
|
||||
"main": {
|
||||
"0": [
|
||||
{
|
||||
"node": "Assert Upper",
|
||||
"type": "main",
|
||||
"index": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"Test Lower": {
|
||||
"main": {
|
||||
"0": [
|
||||
{
|
||||
"node": "Assert Lower",
|
||||
"type": "main",
|
||||
"index": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"Test Split": {
|
||||
"main": {
|
||||
"0": [
|
||||
{
|
||||
"node": "Assert Split Length",
|
||||
"type": "main",
|
||||
"index": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"Assert Split Length": {
|
||||
"main": {
|
||||
"0": [
|
||||
{
|
||||
"node": "Assert Split Count",
|
||||
"type": "main",
|
||||
"index": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"Test Length": {
|
||||
"main": {
|
||||
"0": [
|
||||
{
|
||||
"node": "Assert Length",
|
||||
"type": "main",
|
||||
"index": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"triggers": [
|
||||
{
|
||||
"nodeId": "test_concat",
|
||||
"kind": "manual",
|
||||
"enabled": true,
|
||||
"meta": {
|
||||
"description": "Manually triggered String Plugins Test Suite workflow execution"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
Reference in New Issue
Block a user