autotest-pipeline.json 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132
  1. {
  2. "version": "3.16",
  3. "name": "AutoTest Pipeline",
  4. "registry": {
  5. "params": [],
  6. "services": [],
  7. "apis": [],
  8. "components": [],
  9. "vars": [
  10. "$compileResult(OBJECT)",
  11. "$metadata(OBJECT)",
  12. "$testCases(OBJECT)",
  13. "$runResults(OBJECT)",
  14. "$evaluations(OBJECT)",
  15. "$fixResults(OBJECT)"
  16. ],
  17. "files": {
  18. "inputs": [],
  19. "artifacts": []
  20. },
  21. "docs": {}
  22. },
  23. "steps": [
  24. {
  25. "id": "Local_Compile",
  26. "meta": { "title": "1. Compile Preview" },
  27. "in": { "max_tokens": 4096 },
  28. "out": { "$compileResult": "_result" },
  29. "next": "Extract_Metadata"
  30. },
  31. {
  32. "id": "Extract_Metadata",
  33. "meta": { "title": "2. Extract Metadata" },
  34. "in": { "max_tokens": 4096 },
  35. "out": { "$metadata": "_result" },
  36. "next": "Generate_Tests"
  37. },
  38. {
  39. "id": "Generate_Tests",
  40. "meta": { "title": "3. Generate Test Cases" },
  41. "in": {
  42. "max_tokens": 16000,
  43. "messages": [
  44. { "role": "user", "content": "Generate test cases from metadata" }
  45. ]
  46. },
  47. "out": { "$testCases": "_result" },
  48. "next": "Run_Playwright"
  49. },
  50. {
  51. "id": "Run_Playwright",
  52. "meta": { "title": "4. Run Playwright Tests" },
  53. "in": { "max_tokens": 4096 },
  54. "out": { "$runResults": "_result" },
  55. "next": "Evaluate_Results"
  56. },
  57. {
  58. "id": "Evaluate_Results",
  59. "meta": { "title": "5. Evaluate Results" },
  60. "in": { "max_tokens": 4096 },
  61. "out": { "$evaluations": "_result" },
  62. "next": "Branch_Pass_Fail"
  63. },
  64. {
  65. "id": "Branch_Pass_Fail",
  66. "meta": { "title": "6. Pass / Fail?" },
  67. "type": "Branch_",
  68. "in": {
  69. "expression": "=$evaluations.allPassed"
  70. },
  71. "branches": [
  72. ["true", "Report_Success"],
  73. ["false", "Analyze_Failures"]
  74. ]
  75. },
  76. {
  77. "id": "Analyze_Failures",
  78. "meta": { "title": "7a. Analyze Failures" },
  79. "in": {
  80. "max_tokens": 16000,
  81. "messages": [
  82. { "role": "user", "content": "Analyze test failures and suggest fixes" }
  83. ]
  84. },
  85. "out": { "$fixResults": "_result" },
  86. "next": "User_Decision"
  87. },
  88. {
  89. "id": "User_Decision",
  90. "meta": { "title": "8. Choose Action" },
  91. "type": "Branch_",
  92. "in": {
  93. "expression": "=$userChoice"
  94. },
  95. "branches": [
  96. ["fix_and_rerun", "Apply_Fixes"],
  97. ["report_only", "Report_Failures"],
  98. ["skip", "Stop_Pipeline"]
  99. ]
  100. },
  101. {
  102. "id": "Apply_Fixes",
  103. "meta": { "title": "9. Apply VL Fixes" },
  104. "in": { "max_tokens": 8192 },
  105. "next": "Recompile"
  106. },
  107. {
  108. "id": "Recompile",
  109. "meta": { "title": "10. Recompile" },
  110. "in": { "max_tokens": 4096 },
  111. "next": "Run_Playwright"
  112. },
  113. {
  114. "id": "Report_Success",
  115. "meta": { "title": "Report: All Passed" },
  116. "type": "Stop_",
  117. "in": {}
  118. },
  119. {
  120. "id": "Report_Failures",
  121. "meta": { "title": "Report: With Failures" },
  122. "type": "Stop_",
  123. "in": {}
  124. },
  125. {
  126. "id": "Stop_Pipeline",
  127. "meta": { "title": "Pipeline Stopped" },
  128. "type": "Stop_",
  129. "in": {}
  130. }
  131. ]
  132. }