main 98594d0

convert.json RawHistoryFolder

1{
2 "alias.yml": {
3  "errors": [],
4  "jobs": [
5   {
6    "id": "a",
7    "name": "a",
8    "if": "success()",
9    "needs": [],
10    "steps": [
11     {
12      "id": "__run",
13      "if": "success()"
14     }
15    ]
16   },
17   {
18    "id": "b",
19    "name": "b",
20    "if": "success()",
21    "needs": [],
22    "steps": [
23     {
24      "id": "__run",
25      "if": "success()"
26     }
27    ]
28   }
29  ],
30  "events": {
31   "push": {}
32  }
33 },
34 "alias_scalar.yml": {
35  "errors": [
36   "alias_scalar.yml (Line: 2, Col: 1): Unexpected value 'x'"
37  ],
38  "jobs": []
39 },
40 "background_steps.yml": {
41  "errors": [
42   "background_steps.yml (Line: 7, Col: 9): Unexpected value 'background'",
43   "background_steps.yml (Line: 8, Col: 9): Unexpected value 'wait'"
44  ],
45  "jobs": []
46 },
47 "bad_cron.yml": {
48  "errors": [
49   "bad_cron.yml (Line: 13, Col: 7): Required property is missing: cron",
50   "bad_cron.yml (Line: 16, Col: 7): Unexpected value 'extra'"
51  ],
52  "jobs": []
53 },
54 "bad_if.yml": {
55  "errors": [
56   "bad_if.yml (Line: 5, Col: 9): Unexpected end of expression: '&&'"
57  ],
58  "jobs": [
59   {
60    "id": "a",
61    "name": "a",
62    "if": "success()",
63    "needs": [],
64    "steps": [
65     {
66      "id": "__run",
67      "if": "success()"
68     }
69    ]
70   }
71  ],
72  "events": {
73   "push": {}
74  }
75 },
76 "bad_job_ids.yml": {
77  "errors": [
78   "bad_job_ids.yml (Line: 3, Col: 3): The identifier '1a' is invalid. IDs may only contain alphanumeric characters, '_', and '-'. IDs must start with a letter or '_' and and must be less than 100 characters.",
79   "bad_job_ids.yml (Line: 6, Col: 3): The identifier '__b' is invalid. IDs starting with '__' are reserved.",
80   "bad_job_ids.yml (Line: 9, Col: 3): The identifier 'a b' is invalid. IDs may only contain alphanumeric characters, '_', and '-'. IDs must start with a letter or '_' and and must be less than 100 characters."
81  ],
82  "jobs": [
83   {
84    "id": "1a",
85    "name": "1a",
86    "if": "success()",
87    "needs": [],
88    "steps": [
89     {
90      "id": "__run",
91      "if": "success()"
92     }
93    ]
94   },
95   {
96    "id": "__b",
97    "name": "__b",
98    "if": "success()",
99    "needs": [],
100    "steps": [
101     {
102      "id": "__run",
103      "if": "success()"
104     }
105    ]
106   },
107   {
108    "id": "a b",
109    "name": "a b",
110    "if": "success()",
111    "needs": [],
112    "steps": [
113     {
114      "id": "__run",
115      "if": "success()"
116     }
117    ]
118   }
119  ],
120  "events": {
121   "push": {}
122  }
123 },
124 "bad_needs_cycle.yml": {
125  "errors": [
126   "bad_needs_cycle.yml (Line: 3, Col: 3): The workflow must contain at least one job with no dependencies."
127  ],
128  "jobs": [
129   {
130    "id": "a",
131    "name": "a",
132    "if": "success()",
133    "needs": [
134     "b"
135    ],
136    "steps": [
137     {
138      "id": "__run",
139      "if": "success()"
140     }
141    ]
142   },
143   {
144    "id": "b",
145    "name": "b",
146    "if": "success()",
147    "needs": [
148     "a"
149    ],
150    "steps": [
151     {
152      "id": "__run",
153      "if": "success()"
154     }
155    ]
156   }
157  ],
158  "events": {
159   "push": {}
160  }
161 },
162 "bad_needs_cycle_with_root.yml": {
163  "errors": [
164   "bad_needs_cycle_with_root.yml (Line: 8, Col: 13): Job 'a' depends on job 'b' which creates a cycle in the dependency graph.",
165   "bad_needs_cycle_with_root.yml (Line: 12, Col: 13): Job 'b' depends on job 'a' which creates a cycle in the dependency graph."
166  ],
167  "jobs": [
168   {
169    "id": "r",
170    "name": "r",
171    "if": "success()",
172    "needs": [],
173    "steps": [
174     {
175      "id": "__run",
176      "if": "success()"
177     }
178    ]
179   },
180   {
181    "id": "a",
182    "name": "a",
183    "if": "success()",
184    "needs": [
185     "b"
186    ],
187    "steps": [
188     {
189      "id": "__run",
190      "if": "success()"
191     }
192    ]
193   },
194   {
195    "id": "b",
196    "name": "b",
197    "if": "success()",
198    "needs": [
199     "a",
200     "r"
201    ],
202    "steps": [
203     {
204      "id": "__run",
205      "if": "success()"
206     }
207    ]
208   }
209  ],
210  "events": {
211   "push": {}
212  }
213 },
214 "bad_needs_self.yml": {
215  "errors": [
216   "bad_needs_self.yml (Line: 8, Col: 13): Job 'a' depends on job 'a' which creates a cycle in the dependency graph."
217  ],
218  "jobs": [
219   {
220    "id": "r",
221    "name": "r",
222    "if": "success()",
223    "needs": [],
224    "steps": [
225     {
226      "id": "__run",
227      "if": "success()"
228     }
229    ]
230   },
231   {
232    "id": "a",
233    "name": "a",
234    "if": "success()",
235    "needs": [
236     "a"
237    ],
238    "steps": [
239     {
240      "id": "__run",
241      "if": "success()"
242     }
243    ]
244   }
245  ],
246  "events": {
247   "push": {}
248  }
249 },
250 "bad_needs_unknown.yml": {
251  "errors": [
252   "bad_needs_unknown.yml (Line: 8, Col: 13): Job 'a' depends on unknown job 'zz'."
253  ],
254  "jobs": [
255   {
256    "id": "r",
257    "name": "r",
258    "if": "success()",
259    "needs": [],
260    "steps": [
261     {
262      "id": "__run",
263      "if": "success()"
264     }
265    ]
266   },
267   {
268    "id": "a",
269    "name": "a",
270    "if": "success()",
271    "needs": [
272     "zz",
273     "r"
274    ],
275    "steps": [
276     {
277      "id": "__run",
278      "if": "success()"
279     }
280    ]
281   }
282  ],
283  "events": {
284   "push": {}
285  }
286 },
287 "bad_step_id.yml": {
288  "errors": [
289   "bad_step_id.yml (Line: 5, Col: 96): Unexpected value ''"
290  ],
291  "jobs": []
292 },
293 "bad_yaml_flow.yml": {
294  "errors": [
295   "bad_yaml_flow.yml: Flow sequence in block collection must be sufficiently indented and end with a ] at line 2, column 1:\n\non: [push\n\n^\n"
296  ]
297 },
298 "bad_yaml_tab.yml": {
299  "errors": [
300   "bad_yaml_tab.yml: Tabs are not allowed as indentation at line 3, column 1:\n\njobs:\n\ta: 1\n^\n"
301  ]
302 },
303 "big_ids.yml": {
304  "errors": [
305   "big_ids.yml (Line: 3, Col: 3): The identifier 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is invalid. IDs may only contain alphanumeric characters, '_', and '-'. IDs must start with a letter or '_' and and must be less than 100 characters."
306  ],
307  "jobs": [
308   {
309    "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
310    "name": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
311    "if": "success()",
312    "needs": [],
313    "steps": [
314     {
315      "id": "__run",
316      "if": "success()"
317     }
318    ]
319   },
320   {
321    "id": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
322    "name": "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
323    "if": "success()",
324    "needs": [],
325    "steps": [
326     {
327      "id": "__run",
328      "if": "success()"
329     }
330    ]
331   }
332  ],
333  "events": {
334   "push": {}
335  }
336 },
337 "bool_scalars.yml": {
338  "errors": [],
339  "jobs": [
340   {
341    "id": "a",
342    "name": "a",
343    "if": "success()",
344    "needs": [],
345    "steps": [
346     {
347      "id": "__run",
348      "if": "success()"
349     },
350     {
351      "id": "__run_2",
352      "if": "success()"
353     },
354     {
355      "id": "__run_3",
356      "if": "success()"
357     },
358     {
359      "id": "__run_4",
360      "if": "success()"
361     },
362     {
363      "id": "__run_5",
364      "if": "success()"
365     }
366    ]
367   }
368  ],
369  "events": {
370   "push": {}
371  }
372 },
373 "call_inputs.yml": {
374  "errors": [
375   "call_inputs.yml (Line: 10, Col: 18): Unexpected type 'NumberToken' encountered while reading 'input default'. The type 'BooleanToken' was expected."
376  ],
377  "jobs": [
378   {
379    "id": "a",
380    "name": "a",
381    "if": "success()",
382    "needs": [],
383    "steps": [
384     {
385      "id": "__run",
386      "if": "success()"
387     }
388    ]
389   }
390  ],
391  "events": {
392   "workflow_call": {
393    "inputs": {
394     "a": {
395      "type": "string",
396      "required": true
397     },
398     "b": {
399      "type": "boolean"
400     }
401    },
402    "secrets": {
403     "s": {
404      "required": true
405     },
406     "t": {}
407    }
408   }
409  }
410 },
411 "call_inputs_expr_default.yml": {
412  "errors": [
413   "call_inputs_expr_default.yml (Line: 9, Col: 18): Unexpected type 'NumberToken' encountered while reading 'input default'. The type 'StringToken' was expected."
414  ],
415  "jobs": [
416   {
417    "id": "a",
418    "name": "a",
419    "if": "success()",
420    "needs": [],
421    "steps": [
422     {
423      "id": "__run",
424      "if": "success()"
425     }
426    ]
427   }
428  ],
429  "events": {
430   "workflow_call": {
431    "inputs": {
432     "b": {
433      "type": "boolean"
434     },
435     "c": {
436      "type": "string"
437     }
438    }
439   }
440  }
441 },
442 "comment_doc.yml": {
443  "errors": [
444   "comment_doc.yml: Expected a scalar value, a sequence, or a mapping"
445  ]
446 },
447 "concurrency_bad.yml": {
448  "errors": [
449   "concurrency_bad.yml (Line: 2, Col: 25): Unexpected value 'bogus'"
450  ],
451  "jobs": []
452 },
453 "concurrency_converter.yml": {
454  "errors": [],
455  "jobs": [
456   {
457    "id": "a",
458    "name": "a",
459    "if": "success()",
460    "needs": [],
461    "steps": [
462     {
463      "id": "__run",
464      "if": "success()"
465     }
466    ]
467   }
468  ],
469  "events": {
470   "push": {}
471  }
472 },
473 "concurrency_job.yml": {
474  "errors": [
475   "concurrency_job.yml (Line: 5, Col: 49): Unexpected value '1'"
476  ],
477  "jobs": []
478 },
479 "concurrency_queue.yml": {
480  "errors": [],
481  "jobs": [
482   {
483    "id": "a",
484    "name": "a",
485    "if": "success()",
486    "needs": [],
487    "steps": [
488     {
489      "id": "__run",
490      "if": "success()"
491     }
492    ]
493   }
494  ],
495  "events": {
496   "push": {}
497  }
498 },
499 "concurrency_queue_bad.yml": {
500  "errors": [
501   "concurrency_queue_bad.yml (Line: 5, Col: 36): Unexpected value 'other'"
502  ],
503  "jobs": []
504 },
505 "concurrency_string.yml": {
506  "errors": [],
507  "jobs": [
508   {
509    "id": "a",
510    "name": "a",
511    "if": "success()",
512    "needs": [],
513    "steps": [
514     {
515      "id": "__run",
516      "if": "success()"
517     }
518    ]
519   }
520  ],
521  "events": {
522   "push": {}
523  }
524 },
525 "container_bad.yml": {
526  "errors": [
527   "container_bad.yml (Line: 5, Col: 27): Unexpected value 'bogus'"
528  ],
529  "jobs": []
530 },
531 "container_converter.yml": {
532  "errors": [],
533  "jobs": [
534   {
535    "id": "a",
536    "name": "a",
537    "if": "success()",
538    "needs": [],
539    "steps": [
540     {
541      "id": "__run",
542      "if": "success()"
543     }
544    ]
545   }
546  ],
547  "events": {
548   "push": {}
549  }
550 },
551 "container_empty_image.yml": {
552  "errors": [
553   "container_empty_image.yml (Line: 5, Col: 24): Unexpected value ''"
554  ],
555  "jobs": []
556 },
557 "container_entrypoint.yml": {
558  "errors": [
559   "container_entrypoint.yml (Line: 5, Col: 27): Unexpected value 'entrypoint'"
560  ],
561  "jobs": []
562 },
563 "container_expr.yml": {
564  "errors": [],
565  "jobs": [
566   {
567    "id": "a",
568    "name": "a",
569    "if": "success()",
570    "needs": [],
571    "steps": [
572     {
573      "id": "__run",
574      "if": "success()"
575     }
576    ]
577   }
578  ],
579  "events": {
580   "push": {}
581  }
582 },
583 "container_no_image.yml": {
584  "errors": [
585   "container_no_image.yml (Line: 5, Col: 16): Container image cannot be empty"
586  ],
587  "jobs": [
588   {
589    "id": "a",
590    "name": "a",
591    "if": "success()",
592    "needs": [],
593    "steps": [
594     {
595      "id": "__run",
596      "if": "success()"
597     }
598    ]
599   }
600  ],
601  "events": {
602   "push": {}
603  }
604 },
605 "container_string.yml": {
606  "errors": [],
607  "jobs": [
608   {
609    "id": "a",
610    "name": "a",
611    "if": "success()",
612    "needs": [],
613    "steps": [
614     {
615      "id": "__run",
616      "if": "success()"
617     }
618    ]
619   }
620  ],
621  "events": {
622   "push": {}
623  }
624 },
625 "context_always_job_env.yml": {
626  "errors": [
627   "context_always_job_env.yml (Line: 6, Col: 10): Unrecognized function: 'always'"
628  ],
629  "jobs": []
630 },
631 "context_defaults_run.yml": {
632  "errors": [
633   "context_defaults_run.yml (Line: 7, Col: 28): Unrecognized named-value: 'steps'"
634  ],
635  "jobs": []
636 },
637 "context_env_secrets.yml": {
638  "errors": [],
639  "jobs": [
640   {
641    "id": "a",
642    "name": "a",
643    "if": "success()",
644    "needs": [],
645    "steps": [
646     {
647      "id": "__run",
648      "if": "success()"
649     }
650    ]
651   }
652  ],
653  "events": {
654   "push": {}
655  }
656 },
657 "context_job_name.yml": {
658  "errors": [
659   "context_job_name.yml (Line: 5, Col: 11): Unrecognized named-value: 'steps'"
660  ],
661  "jobs": []
662 },
663 "context_job_outputs.yml": {
664  "errors": [],
665  "jobs": [
666   {
667    "id": "a",
668    "name": "a",
669    "if": "success()",
670    "needs": [],
671    "steps": [
672     {
673      "id": "__run",
674      "if": "success()"
675     }
676    ]
677   }
678  ],
679  "events": {
680   "push": {}
681  }
682 },
683 "context_outputs_hash.yml": {
684  "errors": [
685   "context_outputs_hash.yml (Line: 6, Col: 10): Unrecognized function: 'hashFiles'"
686  ],
687  "jobs": []
688 },
689 "context_run_name.yml": {
690  "errors": [
691   "context_run_name.yml (Line: 2, Col: 11): Unrecognized named-value: 'matrix'"
692  ],
693  "jobs": []
694 },
695 "context_runs_on_secrets.yml": {
696  "errors": [
697   "context_runs_on_secrets.yml (Line: 5, Col: 5): 'runs-on' is already defined"
698  ],
699  "jobs": []
700 },
701 "context_step_run.yml": {
702  "errors": [
703   "context_step_run.yml (Line: 5, Col: 19): Unexpected symbol: '\"a\"'. Located at position 11 within expression: hashFiles(\"a\")"
704  ],
705  "jobs": []
706 },
707 "context_success_in_run.yml": {
708  "errors": [
709   "context_success_in_run.yml (Line: 5, Col: 19): Unrecognized function: 'success'"
710  ],
711  "jobs": []
712 },
713 "context_unknown_func.yml": {
714  "errors": [
715   "context_unknown_func.yml (Line: 5, Col: 19): Unrecognized function: 'nope'"
716  ],
717  "jobs": []
718 },
719 "context_workflow_env.yml": {
720  "errors": [
721   "context_workflow_env.yml (Line: 3, Col: 6): Unrecognized named-value: 'matrix'"
722  ],
723  "jobs": []
724 },
725 "credentials_bad.yml": {
726  "errors": [
727   "credentials_bad.yml (Line: 5, Col: 54): Unexpected value 'token'"
728  ],
729  "jobs": []
730 },
731 "cron_only_bad.yml": {
732  "errors": [
733   "cron_only_bad.yml (Line: 3, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
734   "cron_only_bad.yml (Line: 4, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
735   "cron_only_bad.yml (Line: 5, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
736   "cron_only_bad.yml (Line: 6, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
737   "cron_only_bad.yml (Line: 8, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
738   "cron_only_bad.yml (Line: 9, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
739   "cron_only_bad.yml (Line: 14, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
740   "cron_only_bad.yml (Line: 15, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
741   "cron_only_bad.yml (Line: 16, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
742   "cron_only_bad.yml (Line: 17, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
743   "cron_only_bad.yml (Line: 18, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)",
744   "cron_only_bad.yml (Line: 19, Col: 13): Invalid cron expression. Expected format: '* * * * *' (minute hour day month weekday)"
745  ],
746  "jobs": [
747   {
748    "id": "a",
749    "name": "a",
750    "if": "success()",
751    "needs": [],
752    "steps": [
753     {
754      "id": "__run",
755      "if": "success()"
756     }
757    ]
758   }
759  ],
760  "events": {
761   "schedule": [
762    {
763     "cron": "bad"
764    },
765    {
766     "cron": "61 * * * *"
767    },
768    {
769     "cron": "*/0 * * * *"
770    },
771    {
772     "cron": "0 0 * * 7"
773    },
774    {
775     "cron": "0 0 * jan-mar mon"
776    },
777    {
778     "cron": "0 0 * mar-jan mon"
779    },
780    {
781     "cron": "* * * * * *"
782    },
783    {
784     "cron": "1-5/2 * * * *"
785    },
786    {
787     "cron": "*/5 */2 1,15 * *"
788    },
789    {
790     "cron": "5 4 * * sun"
791    },
792    {
793     "cron": "0  0 * * *"
794    },
795    {
796     "cron": " 0 0 * * *"
797    },
798    {
799     "cron": "1,,2 * * * *"
800    },
801    {
802     "cron": "*/5/2 * * * *"
803    },
804    {
805     "cron": "1-2-3 * * * *"
806    },
807    {
808     "cron": "*-5 * * * *"
809    },
810    {
811     "cron": "5-1 * * * *"
812    },
813    {
814     "cron": "0 0 1-31/2 * *"
815    },
816    {
817     "cron": "0 0 * * MON"
818    },
819    {
820     "cron": "0 0 * Feb *"
821    }
822   ]
823  }
824 },
825 "description_key.yml": {
826  "errors": [],
827  "jobs": [
828   {
829    "id": "a",
830    "name": "a",
831    "if": "success()",
832    "needs": [],
833    "steps": [
834     {
835      "id": "__run",
836      "if": "success()"
837     }
838    ]
839   }
840  ],
841  "events": {
842   "push": {}
843  }
844 },
845 "dispatch_inputs.yml": {
846  "errors": [
847   "dispatch_inputs.yml (Line: 5, Col: 9): Missing 'options' for choice input",
848   "dispatch_inputs.yml (Line: 7, Col: 9): Input type is not 'choice', but 'options' is defined",
849   "dispatch_inputs.yml (Line: 11, Col: 18): Unexpected type 'StringToken' encountered while reading 'input default'. The type 'BooleanToken' was expected."
850  ],
851  "jobs": [
852   {
853    "id": "a",
854    "name": "a",
855    "if": "success()",
856    "needs": [],
857    "steps": [
858     {
859      "id": "__run",
860      "if": "success()"
861     }
862    ]
863   }
864  ],
865  "events": {
866   "workflow_dispatch": {
867    "inputs": {
868     "a": {
869      "type": "choice"
870     },
871     "b": {
872      "type": "string",
873      "options": [
874       "x"
875      ]
876     },
877     "c": {
878      "type": "boolean"
879     },
880     "d": {
881      "type": "environment"
882     },
883     "e": {
884      "type": "string",
885      "description": "x",
886      "required": true,
887      "default": "y"
888     },
889     "f": {}
890    }
891   }
892  }
893 },
894 "dup_job_ids_case.yml": {
895  "errors": [
896   "dup_job_ids_case.yml (Line: 6, Col: 3): 'A' is already defined"
897  ],
898  "jobs": []
899 },
900 "dup_keys.yml": {
901  "errors": [
902   "dup_keys.yml (Line: 2, Col: 1): 'on' is already defined",
903   "dup_keys.yml (Line: 3, Col: 1): Unexpected value 'Name'",
904   "dup_keys.yml (Line: 4, Col: 1): 'name' is already defined",
905   "dup_keys.yml (Line: 8, Col: 5): 'runs-on' is already defined"
906  ],
907  "jobs": []
908 },
909 "empty_doc.yml": {
910  "errors": [
911   "empty_doc.yml: Expected a scalar value, a sequence, or a mapping"
912  ]
913 },
914 "env_nonmap_converter.yml": {
915  "errors": [
916   "env_nonmap_converter.yml (Line: 2, Col: 6): Unexpected value 'x'"
917  ],
918  "jobs": []
919 },
920 "environment_converter.yml": {
921  "errors": [
922   "environment_converter.yml (Line: 5, Col: 40): Unexpected value '1'"
923  ],
924  "jobs": []
925 },
926 "environment_forms.yml": {
927  "errors": [],
928  "jobs": [
929   {
930    "id": "a",
931    "name": "a",
932    "if": "success()",
933    "needs": [],
934    "steps": [
935     {
936      "id": "__run",
937      "if": "success()"
938     }
939    ]
940   }
941  ],
942  "events": {
943   "push": {}
944  }
945 },
946 "environment_map.yml": {
947  "errors": [],
948  "jobs": [
949   {
950    "id": "a",
951    "name": "a",
952    "if": "success()",
953    "needs": [],
954    "steps": [
955     {
956      "id": "__run",
957      "if": "success()"
958     }
959    ]
960   }
961  ],
962  "events": {
963   "push": {}
964  }
965 },
966 "environment_no_name.yml": {
967  "errors": [
968   "environment_no_name.yml (Line: 5, Col: 18): Required property is missing: name"
969  ],
970  "jobs": []
971 },
972 "expr_empty.yml": {
973  "errors": [
974   "expr_empty.yml (Line: 6, Col: 14): An expression was expected"
975  ],
976  "jobs": []
977 },
978 "expr_in_key_env.yml": {
979  "errors": [],
980  "jobs": [
981   {
982    "id": "a",
983    "name": "a",
984    "if": "success()",
985    "needs": [],
986    "steps": [
987     {
988      "id": "__run",
989      "if": "success()"
990     }
991    ]
992   }
993  ],
994  "events": {
995   "push": {}
996  }
997 },
998 "expr_insert_embedded.yml": {
999  "errors": [
1000   "expr_insert_embedded.yml (Line: 7, Col: 12): The directive 'insert' is not allowed in this context. Directives are not supported for expressions that are embedded within a string. Directives are only supported when the entire value is an expression.",
1001   "expr_insert_embedded.yml (Line: 7, Col: 12): Unexpected value 'x ${{ insert }}'"
1002  ],
1003  "jobs": []
1004 },
1005 "expr_insert_key.yml": {
1006  "errors": [
1007   "expr_insert_key.yml (Line: 6, Col: 15): Unexpected value '${{ insert }}'"
1008  ],
1009  "jobs": []
1010 },
1011 "expr_insert_matrix.yml": {
1012  "errors": [],
1013  "jobs": [
1014   {
1015    "id": "a",
1016    "name": "a",
1017    "if": "success()",
1018    "needs": [],
1019    "steps": [
1020     {
1021      "id": "__run",
1022      "if": "success()"
1023     }
1024    ]
1025   }
1026  ],
1027  "events": {
1028   "push": {}
1029  }
1030 },
1031 "expr_insert_params.yml": {
1032  "errors": [
1033   "expr_insert_params.yml (Line: 7, Col: 9): Exactly 0 parameter(s) were expected following the directive 'insert'. Actual parameter count: 1",
1034   "expr_insert_params.yml (Line: 7, Col: 26): Unexpected value '1'"
1035  ],
1036  "jobs": []
1037 },
1038 "expr_key_not_allowed.yml": {
1039  "errors": [
1040   "expr_key_not_allowed.yml (Line: 6, Col: 7): Unrecognized named-value: 'github'"
1041  ],
1042  "jobs": []
1043 },
1044 "expr_literal.yml": {
1045  "errors": [],
1046  "jobs": [
1047   {
1048    "id": "a",
1049    "name": "a",
1050    "if": "success()",
1051    "needs": [],
1052    "steps": [
1053     {
1054      "id": "__run",
1055      "if": "success()"
1056     }
1057    ]
1058   }
1059  ],
1060  "events": {
1061   "push": {}
1062  }
1063 },
1064 "expr_multi.yml": {
1065  "errors": [
1066   "expr_multi.yml (Line: 6, Col: 14): Unrecognized named-value: 'foo'",
1067   "expr_multi.yml (Line: 6, Col: 14): Unexpected symbol: '+'. Located at position 3 within expression: 1 +"
1068  ],
1069  "jobs": []
1070 },
1071 "expr_not_closed.yml": {
1072  "errors": [
1073   "expr_not_closed.yml (Line: 6, Col: 14): The expression is not closed. An unescaped ${{ sequence was found, but the closing }} sequence was not found."
1074  ],
1075  "jobs": []
1076 },
1077 "expr_string_braces.yml": {
1078  "errors": [],
1079  "jobs": [
1080   {
1081    "id": "a",
1082    "name": "a",
1083    "if": "success()",
1084    "needs": [],
1085    "steps": [
1086     {
1087      "id": "__run",
1088      "if": "success()"
1089     }
1090    ]
1091   }
1092  ],
1093  "events": {
1094   "push": {}
1095  }
1096 },
1097 "if_bad_arity.yml": {
1098  "errors": [
1099   "if_bad_arity.yml (Line: 5, Col: 26): Too many parameters supplied: 'failure'"
1100  ],
1101  "jobs": [
1102   {
1103    "id": "a",
1104    "name": "a",
1105    "if": "success()",
1106    "needs": [],
1107    "steps": [
1108     {
1109      "id": "__run",
1110      "if": "success()"
1111     }
1112    ]
1113   }
1114  ],
1115  "events": {
1116   "push": {}
1117  }
1118 },
1119 "if_job_ctx.yml": {
1120  "errors": [
1121   "if_job_ctx.yml (Line: 5, Col: 9): Unrecognized named-value: 'steps'"
1122  ],
1123  "jobs": [
1124   {
1125    "id": "a",
1126    "name": "a",
1127    "if": "success()",
1128    "needs": [],
1129    "steps": [
1130     {
1131      "id": "__run",
1132      "if": "success()"
1133     }
1134    ]
1135   }
1136  ],
1137  "events": {
1138   "push": {}
1139  }
1140 },
1141 "if_step_job_funcs.yml": {
1142  "errors": [],
1143  "jobs": [
1144   {
1145    "id": "a",
1146    "name": "a",
1147    "if": "success(1)",
1148    "needs": [],
1149    "steps": [
1150     {
1151      "id": "__run",
1152      "if": "success()"
1153     }
1154    ]
1155   }
1156  ],
1157  "events": {
1158   "push": {}
1159  }
1160 },
1161 "if_wrapping.yml": {
1162  "errors": [],
1163  "jobs": [
1164   {
1165    "id": "a",
1166    "name": "a",
1167    "if": "success() && (github.ref == 'x')",
1168    "needs": [],
1169    "steps": [
1170     {
1171      "id": "__run",
1172      "if": "success() && (hashFiles('a'))"
1173     },
1174     {
1175      "id": "__run_2",
1176      "if": "always()"
1177     },
1178     {
1179      "id": "__run_3",
1180      "if": "failure()"
1181     },
1182     {
1183      "id": "__run_4",
1184      "if": "success()"
1185     },
1186     {
1187      "id": "__run_5",
1188      "if": "!cancelled()"
1189     },
1190     {
1191      "id": "__run_6",
1192      "if": "contains(github.ref, 'a') || success()"
1193     },
1194     {
1195      "id": "__run_7",
1196      "if": "toJSON(success())"
1197     },
1198     {
1199      "id": "__run_8",
1200      "if": "success() && (true)"
1201     },
1202     {
1203      "id": "__run_9",
1204      "if": "success() && (format('{0} == ''x''', github.ref))"
1205     }
1206    ]
1207   }
1208  ],
1209  "events": {
1210   "push": {}
1211  }
1212 },
1213 "if_wrapping_nonstring.yml": {
1214  "errors": [],
1215  "jobs": [
1216   {
1217    "id": "a",
1218    "name": "a",
1219    "if": "success() && (5)",
1220    "needs": [],
1221    "steps": [
1222     {
1223      "id": "__run",
1224      "if": "success()"
1225     },
1226     {
1227      "id": "__run_2",
1228      "if": "success() && (false)"
1229     }
1230    ]
1231   }
1232  ],
1233  "events": {
1234   "push": {}
1235  }
1236 },
1237 "inputs_converter_errors.yml": {
1238  "errors": [
1239   "inputs_converter_errors.yml (Line: 21, Col: 18): Unrecognized named-value: 'github'"
1240  ],
1241  "jobs": []
1242 },
1243 "job_env_nonmap.yml": {
1244  "errors": [
1245   "job_env_nonmap.yml (Line: 5, Col: 10): Unexpected value 'x'"
1246  ],
1247  "jobs": []
1248 },
1249 "job_name_empty.yml": {
1250  "errors": [],
1251  "jobs": [
1252   {
1253    "id": "a",
1254    "name": "a",
1255    "if": "success()",
1256    "needs": [],
1257    "steps": [
1258     {
1259      "id": "__run",
1260      "if": "success()"
1261     }
1262    ]
1263   }
1264  ],
1265  "events": {
1266   "push": {}
1267  }
1268 },
1269 "job_name_expr.yml": {
1270  "errors": [],
1271  "jobs": [
1272   {
1273    "id": "a",
1274    "name": "${{ format('x-{0}', matrix.a) }}",
1275    "if": "success()",
1276    "needs": [],
1277    "steps": [
1278     {
1279      "id": "__run",
1280      "if": "success()"
1281     }
1282    ]
1283   }
1284  ],
1285  "events": {
1286   "push": {}
1287  }
1288 },
1289 "job_not_map.yml": {
1290  "errors": [
1291   "job_not_map.yml (Line: 3, Col: 6): Unexpected value 'x'"
1292  ],
1293  "jobs": []
1294 },
1295 "jobs_dropped_job.yml": {
1296  "errors": [
1297   "jobs_dropped_job.yml (Line: 8, Col: 10): Unexpected value 'x'",
1298   "jobs_dropped_job.yml (Line: 9, Col: 14): Unexpected value 'y'"
1299  ],
1300  "jobs": []
1301 },
1302 "jobs_empty.yml": {
1303  "errors": [
1304   "jobs_empty.yml (Line: 2, Col: 7): The workflow must contain at least one job with no dependencies."
1305  ],
1306  "jobs": [],
1307  "events": {
1308   "push": {}
1309  }
1310 },
1311 "jobs_not_map.yml": {
1312  "errors": [
1313   "jobs_not_map.yml (Line: 2, Col: 7): A sequence was not expected"
1314  ],
1315  "jobs": []
1316 },
1317 "multiline_folded.yml": {
1318  "errors": [
1319   "multiline_folded.yml (Line: 6, Col: 14): Unrecognized named-value: 'bar'"
1320  ],
1321  "jobs": []
1322 },
1323 "multiline_plain.yml": {
1324  "errors": [
1325   "multiline_plain.yml (Line: 6, Col: 14): Unrecognized named-value: 'bar'"
1326  ],
1327  "jobs": []
1328 },
1329 "needs_bad_type.yml": {
1330  "errors": [
1331   "needs_bad_type.yml (Line: 3, Col: 3): The workflow must contain at least one job with no dependencies."
1332  ],
1333  "jobs": [
1334   {
1335    "id": "a",
1336    "name": "a",
1337    "if": "success()",
1338    "needs": [
1339     "3"
1340    ],
1341    "steps": [
1342     {
1343      "id": "__run",
1344      "if": "success()"
1345     }
1346    ]
1347   }
1348  ],
1349  "events": {
1350   "push": {}
1351  }
1352 },
1353 "needs_case.yml": {
1354  "errors": [
1355   "needs_case.yml (Line: 7, Col: 13): Job 'b' depends on unknown job 'A'."
1356  ],
1357  "jobs": [
1358   {
1359    "id": "a",
1360    "name": "a",
1361    "if": "success()",
1362    "needs": [],
1363    "steps": [
1364     {
1365      "id": "__run",
1366      "if": "success()"
1367     }
1368    ]
1369   },
1370   {
1371    "id": "b",
1372    "name": "b",
1373    "if": "success()",
1374    "needs": [
1375     "A"
1376    ],
1377    "steps": [
1378     {
1379      "id": "__run",
1380      "if": "success()"
1381     }
1382    ]
1383   }
1384  ],
1385  "events": {
1386   "push": {}
1387  }
1388 },
1389 "needs_dup.yml": {
1390  "errors": [],
1391  "jobs": [
1392   {
1393    "id": "a",
1394    "name": "a",
1395    "if": "success()",
1396    "needs": [],
1397    "steps": [
1398     {
1399      "id": "__run",
1400      "if": "success()"
1401     }
1402    ]
1403   },
1404   {
1405    "id": "b",
1406    "name": "b",
1407    "if": "success()",
1408    "needs": [
1409     "a",
1410     "a"
1411    ],
1412    "steps": [
1413     {
1414      "id": "__run",
1415      "if": "success()"
1416     }
1417    ]
1418   }
1419  ],
1420  "events": {
1421   "push": {}
1422  }
1423 },
1424 "needs_empty.yml": {
1425  "errors": [],
1426  "jobs": [
1427   {
1428    "id": "a",
1429    "name": "a",
1430    "if": "success()",
1431    "needs": [],
1432    "steps": [
1433     {
1434      "id": "__run",
1435      "if": "success()"
1436     }
1437    ]
1438   }
1439  ],
1440  "events": {
1441   "push": {}
1442  }
1443 },
1444 "needs_string.yml": {
1445  "errors": [],
1446  "jobs": [
1447   {
1448    "id": "a",
1449    "name": "a",
1450    "if": "success()",
1451    "needs": [],
1452    "steps": [
1453     {
1454      "id": "__run",
1455      "if": "success()"
1456     }
1457    ]
1458   },
1459   {
1460    "id": "b",
1461    "name": "b",
1462    "if": "success()",
1463    "needs": [
1464     "a"
1465    ],
1466    "steps": [
1467     {
1468      "id": "__run",
1469      "if": "success()"
1470     }
1471    ]
1472   }
1473  ],
1474  "events": {
1475   "push": {}
1476  }
1477 },
1478 "no_jobs.yml": {
1479  "errors": [
1480   "no_jobs.yml (Line: 1, Col: 1): Required property is missing: jobs"
1481  ],
1482  "jobs": []
1483 },
1484 "no_on.yml": {
1485  "errors": [
1486   "no_on.yml (Line: 1, Col: 1): Required property is missing: on"
1487  ],
1488  "jobs": []
1489 },
1490 "no_runs_on.yml": {
1491  "errors": [
1492   "no_runs_on.yml (Line: 4, Col: 5): Required property is missing: runs-on"
1493  ],
1494  "jobs": []
1495 },
1496 "no_steps.yml": {
1497  "errors": [],
1498  "jobs": [
1499   {
1500    "id": "a",
1501    "name": "a",
1502    "if": "success()",
1503    "needs": [],
1504    "steps": []
1505   }
1506  ],
1507  "events": {
1508   "push": {}
1509  }
1510 },
1511 "null_doc.yml": {
1512  "errors": [
1513   "null_doc.yml (Line: 1, Col: 1): Unexpected value ''"
1514  ],
1515  "jobs": []
1516 },
1517 "on_bad_type.yml": {
1518  "errors": [
1519   "on_bad_type.yml (Line: 1, Col: 5): Unexpected value '3'"
1520  ],
1521  "jobs": []
1522 },
1523 "on_call_secrets.yml": {
1524  "errors": [
1525   "on_call_secrets.yml (Line: 6, Col: 19): Unexpected value '3'"
1526  ],
1527  "jobs": []
1528 },
1529 "on_dispatch_input_unknown_key.yml": {
1530  "errors": [
1531   "on_dispatch_input_unknown_key.yml (Line: 5, Col: 9): Unexpected value 'bogus'"
1532  ],
1533  "jobs": []
1534 },
1535 "on_event_non_mapping.yml": {
1536  "errors": [
1537   "on_event_non_mapping.yml (Line: 2, Col: 9): Unexpected value 'x'"
1538  ],
1539  "jobs": []
1540 },
1541 "on_expression.yml": {
1542  "errors": [
1543   "on_expression.yml (Line: 1, Col: 5): Unrecognized named-value: 'x'",
1544   "on_expression.yml (Line: 1, Col: 5): Unexpected value '${{ x }}'"
1545  ],
1546  "jobs": []
1547 },
1548 "on_filter_empty_item.yml": {
1549  "errors": [
1550   "on_filter_empty_item.yml (Line: 3, Col: 16): Unexpected value ''"
1551  ],
1552  "jobs": []
1553 },
1554 "on_filter_item_types.yml": {
1555  "errors": [
1556   "on_filter_item_types.yml (Line: 4, Col: 13): A sequence was not expected"
1557  ],
1558  "jobs": []
1559 },
1560 "on_filter_types.yml": {
1561  "errors": [],
1562  "jobs": [
1563   {
1564    "id": "a",
1565    "name": "a",
1566    "if": "success()",
1567    "needs": [],
1568    "steps": [
1569     {
1570      "id": "__run",
1571      "if": "success()"
1572     }
1573    ]
1574   }
1575  ],
1576  "events": {
1577   "push": {
1578    "branches": [
1579     "1"
1580    ]
1581   }
1582  }
1583 },
1584 "on_filters_both.yml": {
1585  "errors": [],
1586  "jobs": [
1587   {
1588    "id": "a",
1589    "name": "a",
1590    "if": "success()",
1591    "needs": [],
1592    "steps": [
1593     {
1594      "id": "__run",
1595      "if": "success()"
1596     }
1597    ]
1598   }
1599  ],
1600  "events": {
1601   "push": {
1602    "branches": [
1603     "a"
1604    ],
1605    "branches-ignore": [
1606     "b"
1607    ],
1608    "tags": [
1609     "v*"
1610    ],
1611    "tags-ignore": [
1612     "x"
1613    ],
1614    "paths": [
1615     "**.go"
1616    ],
1617    "paths-ignore": []
1618   }
1619  }
1620 },
1621 "on_forms.yml": {
1622  "errors": [],
1623  "jobs": [
1624   {
1625    "id": "a",
1626    "name": "a",
1627    "if": "success()",
1628    "needs": [],
1629    "steps": [
1630     {
1631      "id": "__run",
1632      "if": "success()"
1633     }
1634    ]
1635   }
1636  ],
1637  "events": {
1638   "push": {},
1639   "pull_request": {},
1640   "issues": {
1641    "types": [
1642     "opened"
1643    ]
1644   }
1645  }
1646 },
1647 "on_schedule_non_seq.yml": {
1648  "errors": [
1649   "on_schedule_non_seq.yml (Line: 2, Col: 13): Unexpected value 'x'"
1650  ],
1651  "jobs": []
1652 },
1653 "on_unknown_event.yml": {
1654  "errors": [
1655   "on_unknown_event.yml (Line: 1, Col: 12): Unexpected value 'bogus'"
1656  ],
1657  "jobs": []
1658 },
1659 "on_unknown_key.yml": {
1660  "errors": [
1661   "on_unknown_key.yml (Line: 3, Col: 5): Unexpected value 'foo'"
1662  ],
1663  "jobs": []
1664 },
1665 "outputs_nonmap.yml": {
1666  "errors": [
1667   "outputs_nonmap.yml (Line: 5, Col: 14): Unexpected value 'x'"
1668  ],
1669  "jobs": []
1670 },
1671 "permissions_bad.yml": {
1672  "errors": [
1673   "permissions_bad.yml (Line: 3, Col: 3): Unexpected value 'bogus'",
1674   "permissions_bad.yml (Line: 4, Col: 13): Unexpected value 'maybe'"
1675  ],
1676  "jobs": []
1677 },
1678 "permissions_forms.yml": {
1679  "errors": [
1680   "permissions_forms.yml (Line: 9, Col: 17): Unexpected value 'read'"
1681  ],
1682  "jobs": []
1683 },
1684 "quoted_multiline.yml": {
1685  "errors": [
1686   "quoted_multiline.yml (Line: 6, Col: 14): Unrecognized named-value: 'bar'"
1687  ],
1688  "jobs": []
1689 },
1690 "reusable_needs.yml": {
1691  "errors": [],
1692  "jobs": [
1693   {
1694    "id": "a",
1695    "name": "a",
1696    "if": "success()",
1697    "needs": [],
1698    "steps": [
1699     {
1700      "id": "__run",
1701      "if": "success()"
1702     }
1703    ]
1704   },
1705   {
1706    "id": "b",
1707    "name": "b",
1708    "if": "success()",
1709    "needs": [
1710     "a"
1711    ],
1712    "steps": []
1713   }
1714  ],
1715  "events": {
1716   "push": {}
1717  }
1718 },
1719 "reusable_ok.yml": {
1720  "errors": [],
1721  "jobs": [
1722   {
1723    "id": "a",
1724    "name": "a",
1725    "if": "success()",
1726    "needs": [],
1727    "steps": []
1728   }
1729  ],
1730  "events": {
1731   "push": {}
1732  }
1733 },
1734 "reusable_with_runs_on.yml": {
1735  "errors": [
1736   "reusable_with_runs_on.yml (Line: 5, Col: 5): Unexpected value 'runs-on'"
1737  ],
1738  "jobs": []
1739 },
1740 "reusable_with_steps.yml": {
1741  "errors": [
1742   "reusable_with_steps.yml (Line: 5, Col: 5): Unexpected value 'steps'"
1743  ],
1744  "jobs": []
1745 },
1746 "runs_on_bad.yml": {
1747  "errors": [
1748   "runs_on_bad.yml (Line: 4, Col: 15): A sequence was not expected",
1749   "runs_on_bad.yml (Line: 10, Col: 14): Unexpected value ''"
1750  ],
1751  "jobs": []
1752 },
1753 "runs_on_converter_labels.yml": {
1754  "errors": [
1755   "runs_on_converter_labels.yml (Line: 4, Col: 24): A sequence was not expected"
1756  ],
1757  "jobs": []
1758 },
1759 "runs_on_forms.yml": {
1760  "errors": [],
1761  "jobs": [
1762   {
1763    "id": "a",
1764    "name": "a",
1765    "if": "success()",
1766    "needs": [],
1767    "steps": [
1768     {
1769      "id": "__run",
1770      "if": "success()"
1771     }
1772    ]
1773   },
1774   {
1775    "id": "b",
1776    "name": "b",
1777    "if": "success()",
1778    "needs": [],
1779    "steps": [
1780     {
1781      "id": "__run",
1782      "if": "success()"
1783     }
1784    ]
1785   },
1786   {
1787    "id": "c",
1788    "name": "c",
1789    "if": "success()",
1790    "needs": [],
1791    "steps": [
1792     {
1793      "id": "__run",
1794      "if": "success()"
1795     }
1796    ]
1797   }
1798  ],
1799  "events": {
1800   "push": {}
1801  }
1802 },
1803 "runs_on_group_bad.yml": {
1804  "errors": [
1805   "runs_on_group_bad.yml (Line: 4, Col: 22): Invalid runs-on group name 'foo/bar/baz. Please use 'organization/' or 'enterprise/' prefix to target a single runner group.'",
1806   "runs_on_group_bad.yml (Line: 7, Col: 22): Invalid runs-on group name 'org/'.",
1807   "runs_on_group_bad.yml (Line: 10, Col: 22): Invalid runs-on group name 'bogus/x. Please use 'organization/' or 'enterprise/' prefix to target a single runner group.'"
1808  ],
1809  "jobs": [
1810   {
1811    "id": "a",
1812    "name": "a",
1813    "if": "success()",
1814    "needs": [],
1815    "steps": [
1816     {
1817      "id": "__run",
1818      "if": "success()"
1819     }
1820    ]
1821   },
1822   {
1823    "id": "b",
1824    "name": "b",
1825    "if": "success()",
1826    "needs": [],
1827    "steps": [
1828     {
1829      "id": "__run",
1830      "if": "success()"
1831     }
1832    ]
1833   },
1834   {
1835    "id": "c",
1836    "name": "c",
1837    "if": "success()",
1838    "needs": [],
1839    "steps": [
1840     {
1841      "id": "__run",
1842      "if": "success()"
1843     }
1844    ]
1845   },
1846   {
1847    "id": "d",
1848    "name": "d",
1849    "if": "success()",
1850    "needs": [],
1851    "steps": [
1852     {
1853      "id": "__run",
1854      "if": "success()"
1855     }
1856    ]
1857   }
1858  ],
1859  "events": {
1860   "push": {}
1861  }
1862 },
1863 "scalar_doc.yml": {
1864  "errors": [
1865   "scalar_doc.yml (Line: 1, Col: 1): Unexpected value 'hello'"
1866  ],
1867  "jobs": []
1868 },
1869 "seq_doc.yml": {
1870  "errors": [
1871   "seq_doc.yml (Line: 1, Col: 1): A sequence was not expected"
1872  ],
1873  "jobs": []
1874 },
1875 "services_bad.yml": {
1876  "errors": [
1877   "services_bad.yml (Line: 5, Col: 30): Unexpected value 'bogus'"
1878  ],
1879  "jobs": []
1880 },
1881 "services_not_map.yml": {
1882  "errors": [
1883   "services_not_map.yml (Line: 5, Col: 15): A sequence was not expected"
1884  ],
1885  "jobs": []
1886 },
1887 "services_ok.yml": {
1888  "errors": [],
1889  "jobs": [
1890   {
1891    "id": "a",
1892    "name": "a",
1893    "if": "success()",
1894    "needs": [],
1895    "steps": [
1896     {
1897      "id": "__run",
1898      "if": "success()"
1899     }
1900    ]
1901   }
1902  ],
1903  "events": {
1904   "push": {}
1905  }
1906 },
1907 "snapshot.yml": {
1908  "errors": [],
1909  "jobs": [
1910   {
1911    "id": "a",
1912    "name": "a",
1913    "if": "success()",
1914    "needs": [],
1915    "steps": [
1916     {
1917      "id": "__run",
1918      "if": "success()"
1919     }
1920    ]
1921   }
1922  ],
1923  "events": {
1924   "push": {}
1925  }
1926 },
1927 "step_both.yml": {
1928  "errors": [
1929   "step_both.yml (Line: 7, Col: 9): Unexpected value 'uses'"
1930  ],
1931  "jobs": []
1932 },
1933 "step_coe_bad.yml": {
1934  "errors": [
1935   "step_coe_bad.yml (Line: 5, Col: 41): Unexpected value 'yes'"
1936  ],
1937  "jobs": []
1938 },
1939 "step_coe_expr.yml": {
1940  "errors": [],
1941  "jobs": [
1942   {
1943    "id": "a",
1944    "name": "a",
1945    "if": "success()",
1946    "needs": [],
1947    "steps": [
1948     {
1949      "id": "__run",
1950      "if": "success()"
1951     }
1952    ]
1953   }
1954  ],
1955  "events": {
1956   "push": {}
1957  }
1958 },
1959 "step_continue_on_error_num.yml": {
1960  "errors": [
1961   "step_continue_on_error_num.yml (Line: 5, Col: 41): Unexpected value '1'"
1962  ],
1963  "jobs": []
1964 },
1965 "step_empty_uses.yml": {
1966  "errors": [
1967   "step_empty_uses.yml (Line: 6, Col: 15): Unexpected value ''"
1968  ],
1969  "jobs": []
1970 },
1971 "step_env_nonmap.yml": {
1972  "errors": [
1973   "step_env_nonmap.yml (Line: 5, Col: 27): Unexpected value 'x'"
1974  ],
1975  "jobs": []
1976 },
1977 "step_id_100.yml": {
1978  "errors": [
1979   "step_id_100.yml (Line: 5, Col: 141): The identifier 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa' is invalid. IDs may only contain alphanumeric characters, '_', and '-'. IDs must start with a letter or '_' and and must be less than 100 characters."
1980  ],
1981  "jobs": [
1982   {
1983    "id": "a",
1984    "name": "a",
1985    "if": "success()",
1986    "needs": [],
1987    "steps": [
1988     {
1989      "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
1990      "if": "success()"
1991     },
1992     {
1993      "id": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
1994      "if": "success()"
1995     }
1996    ]
1997   }
1998  ],
1999  "events": {
2000   "push": {}
2001  }
2002 },
2003 "step_ids_only_bad.yml": {
2004  "errors": [
2005   "step_ids_only_bad.yml (Line: 5, Col: 26): The identifier '1x' is invalid. IDs may only contain alphanumeric characters, '_', and '-'. IDs must start with a letter or '_' and and must be less than 100 characters.",
2006   "step_ids_only_bad.yml (Line: 5, Col: 60): The identifier 's' may not be used more than once within the same scope.",
2007   "step_ids_only_bad.yml (Line: 5, Col: 77): The identifier '__x' is invalid. IDs starting with '__' are reserved.",
2008   "step_ids_only_bad.yml (Line: 5, Col: 113): The identifier 'a b' is invalid. IDs may only contain alphanumeric characters, '_', and '-'. IDs must start with a letter or '_' and and must be less than 100 characters.",
2009   "step_ids_only_bad.yml (Line: 5, Col: 134): The identifier 'x.y' is invalid. IDs may only contain alphanumeric characters, '_', and '-'. IDs must start with a letter or '_' and and must be less than 100 characters."
2010  ],
2011  "jobs": [
2012   {
2013    "id": "a",
2014    "name": "a",
2015    "if": "success()",
2016    "needs": [],
2017    "steps": [
2018     {
2019      "id": "1x",
2020      "if": "success()"
2021     },
2022     {
2023      "id": "s",
2024      "if": "success()"
2025     },
2026     {
2027      "id": "s",
2028      "if": "success()"
2029     },
2030     {
2031      "id": "__x",
2032      "if": "success()"
2033     },
2034     {
2035      "id": "S",
2036      "if": "success()"
2037     },
2038     {
2039      "id": "a b",
2040      "if": "success()"
2041     },
2042     {
2043      "id": "x.y",
2044      "if": "success()"
2045     }
2046    ]
2047   }
2048  ],
2049  "events": {
2050   "push": {}
2051  }
2052 },
2053 "step_neither.yml": {
2054  "errors": [
2055   "step_neither.yml (Line: 6, Col: 9): There's not enough info to determine what you meant. Add one of these properties: run, shell, uses, with, working-directory"
2056  ],
2057  "jobs": []
2058 },
2059 "step_run_names_collide.yml": {
2060  "errors": [
2061   "step_run_names_collide.yml (Line: 5, Col: 26): The identifier '__run' is invalid. IDs starting with '__' are reserved."
2062  ],
2063  "jobs": [
2064   {
2065    "id": "a",
2066    "name": "a",
2067    "if": "success()",
2068    "needs": [],
2069    "steps": [
2070     {
2071      "id": "__run",
2072      "if": "success()"
2073     },
2074     {
2075      "id": "_run",
2076      "if": "success()"
2077     },
2078     {
2079      "id": "__run",
2080      "if": "success()"
2081     },
2082     {
2083      "id": "__run_2",
2084      "if": "success()"
2085     },
2086     {
2087      "id": "___x__y",
2088      "if": "success()"
2089     }
2090    ]
2091   }
2092  ],
2093  "events": {
2094   "push": {}
2095  }
2096 },
2097 "step_shell_empty.yml": {
2098  "errors": [
2099   "step_shell_empty.yml (Line: 5, Col: 29): Unexpected value ''"
2100  ],
2101  "jobs": []
2102 },
2103 "step_wd_empty.yml": {
2104  "errors": [],
2105  "jobs": [
2106   {
2107    "id": "a",
2108    "name": "a",
2109    "if": "success()",
2110    "needs": [],
2111    "steps": [
2112     {
2113      "id": "__run",
2114      "if": "success()"
2115     }
2116    ]
2117   }
2118  ],
2119  "events": {
2120   "push": {}
2121  }
2122 },
2123 "step_with_nonstring.yml": {
2124  "errors": [
2125   "step_with_nonstring.yml (Line: 5, Col: 53): A sequence was not expected"
2126  ],
2127  "jobs": []
2128 },
2129 "steps_empty_list.yml": {
2130  "errors": [],
2131  "jobs": [
2132   {
2133    "id": "a",
2134    "name": "a",
2135    "if": "success()",
2136    "needs": [],
2137    "steps": []
2138   }
2139  ],
2140  "events": {
2141   "push": {}
2142  }
2143 },
2144 "steps_not_seq.yml": {
2145  "errors": [
2146   "steps_not_seq.yml (Line: 5, Col: 12): Unexpected value 'a'"
2147  ],
2148  "jobs": []
2149 },
2150 "strategy_bad_key.yml": {
2151  "errors": [
2152   "strategy_bad_key.yml (Line: 6, Col: 7): Unexpected value 'bogus'"
2153  ],
2154  "jobs": []
2155 },
2156 "strategy_ctx.yml": {
2157  "errors": [
2158   "strategy_ctx.yml (Line: 7, Col: 12): Unrecognized named-value: 'steps'",
2159   "strategy_ctx.yml (Line: 7, Col: 12): Unexpected value '${{ steps.x.outputs.y }}'"
2160  ],
2161  "jobs": []
2162 },
2163 "strategy_matrix_bad.yml": {
2164  "errors": [
2165   "strategy_matrix_bad.yml (Line: 7, Col: 13): Unexpected value 'foo'"
2166  ],
2167  "jobs": []
2168 },
2169 "strategy_matrix_expr.yml": {
2170  "errors": [],
2171  "jobs": [
2172   {
2173    "id": "a",
2174    "name": "a",
2175    "if": "success()",
2176    "needs": [],
2177    "steps": [
2178     {
2179      "id": "__run",
2180      "if": "success()"
2181     }
2182    ]
2183   }
2184  ],
2185  "events": {
2186   "push": {}
2187  }
2188 },
2189 "strategy_matrix_ok.yml": {
2190  "errors": [],
2191  "jobs": [
2192   {
2193    "id": "a",
2194    "name": "a",
2195    "if": "success()",
2196    "needs": [],
2197    "steps": [
2198     {
2199      "id": "__run",
2200      "if": "success()"
2201     }
2202    ]
2203   }
2204  ],
2205  "events": {
2206   "push": {}
2207  }
2208 },
2209 "timeout_expr.yml": {
2210  "errors": [],
2211  "jobs": [
2212   {
2213    "id": "a",
2214    "name": "a",
2215    "if": "success()",
2216    "needs": [],
2217    "steps": [
2218     {
2219      "id": "__run",
2220      "if": "success()"
2221     }
2222    ]
2223   }
2224  ],
2225  "events": {
2226   "push": {}
2227  }
2228 },
2229 "timeout_str.yml": {
2230  "errors": [
2231   "timeout_str.yml (Line: 5, Col: 22): Unexpected value 'abc'"
2232  ],
2233  "jobs": []
2234 },
2235 "two_docs.yml": {
2236  "errors": [
2237   "two_docs.yml: Source contains multiple documents; please use YAML.parseAllDocuments() at line 3, column 1:\n\njobs: {}\n---\n^\n"
2238  ]
2239 },
2240 "unicode.yml": {
2241  "errors": [
2242   "unicode.yml (Line: 6, Col: 19): Unrecognized named-value: 'foo'"
2243  ],
2244  "jobs": []
2245 },
2246 "unknown_job_key.yml": {
2247  "errors": [
2248   "unknown_job_key.yml (Line: 5, Col: 5): Unexpected value 'bogus'"
2249  ],
2250  "jobs": []
2251 },
2252 "unknown_top_key.yml": {
2253  "errors": [
2254   "unknown_top_key.yml (Line: 2, Col: 1): Unexpected value 'bogus'"
2255  ],
2256  "jobs": []
2257 },
2258 "uses_ids.yml": {
2259  "errors": [
2260   "uses_ids.yml (Line: 5, Col: 240): The identifier '__run' is invalid. IDs starting with '__' are reserved."
2261  ],
2262  "jobs": [
2263   {
2264    "id": "a",
2265    "name": "a",
2266    "if": "success()",
2267    "needs": [],
2268    "steps": [
2269     {
2270      "id": "__actions_checkout",
2271      "if": "success()"
2272     },
2273     {
2274      "id": "__self",
2275      "if": "success()"
2276     },
2277     {
2278      "id": "__alpine_3",
2279      "if": "success()"
2280     },
2281     {
2282      "id": "__run",
2283      "if": "success()"
2284     },
2285     {
2286      "id": "__run_2",
2287      "if": "success()"
2288     },
2289     {
2290      "id": "__actions_checkout_2",
2291      "if": "success()"
2292     },
2293     {
2294      "id": "__run_3",
2295      "if": "success()"
2296     },
2297     {
2298      "id": "__a_b",
2299      "if": "success()"
2300     },
2301     {
2302      "id": "__self_2",
2303      "if": "success()"
2304     },
2305     {
2306      "id": "__run_4",
2307      "if": "success()"
2308     },
2309     {
2310      "id": "__a_b_2",
2311      "if": "success()"
2312     },
2313     {
2314      "id": "__self_3",
2315      "if": "success()"
2316     },
2317     {
2318      "id": "__run",
2319      "if": "success()"
2320     }
2321    ]
2322   }
2323  ],
2324  "events": {
2325   "push": {}
2326  }
2327 },
2328 "valid_full.yml": {
2329  "errors": [],
2330  "jobs": [
2331   {
2332    "id": "build",
2333    "name": "${{ format('Build {0}', matrix.os) }}",
2334    "if": "success()",
2335    "needs": [],
2336    "steps": [
2337     {
2338      "id": "__actions_checkout",
2339      "if": "success()"
2340     },
2341     {
2342      "id": "s",
2343      "if": "success() && (github.ref == 'refs/heads/main')"
2344     },
2345     {
2346      "id": "__run",
2347      "if": "always()"
2348     }
2349    ]
2350   },
2351   {
2352    "id": "test",
2353    "name": "test",
2354    "if": "success() && (needs.build.result == 'success')",
2355    "needs": [
2356     "build"
2357    ],
2358    "steps": [
2359     {
2360      "id": "__run",
2361      "if": "success()"
2362     }
2363    ]
2364   },
2365   {
2366    "id": "deploy",
2367    "name": "deploy",
2368    "if": "success()",
2369    "needs": [
2370     "build",
2371     "test"
2372    ],
2373    "steps": []
2374   }
2375  ],
2376  "events": {
2377   "push": {
2378    "branches": [
2379     "main",
2380     "release/**"
2381    ],
2382    "tags": [
2383     "v*"
2384    ],
2385    "paths": [
2386     "src/**"
2387    ]
2388   },
2389   "pull_request": {
2390    "branches-ignore": [
2391     "wip"
2392    ]
2393   },
2394   "schedule": [
2395    {
2396     "cron": "30 5,17 * * 1-5"
2397    }
2398   ],
2399   "workflow_dispatch": {
2400    "inputs": {
2401     "level": {
2402      "type": "choice",
2403      "options": [
2404       "a",
2405       "b"
2406      ],
2407      "default": "a"
2408     }
2409    }
2410   }
2411  }
2412 },
2413 "valid_minimal.yml": {
2414  "errors": [],
2415  "jobs": [
2416   {
2417    "id": "a",
2418    "name": "a",
2419    "if": "success()",
2420    "needs": [],
2421    "steps": [
2422     {
2423      "id": "__run",
2424      "if": "success()"
2425     }
2426    ]
2427   }
2428  ],
2429  "events": {
2430   "push": {}
2431  }
2432 },
2433 "workflow_defaults_bad.yml": {
2434  "errors": [
2435   "workflow_defaults_bad.yml (Line: 4, Col: 5): Unexpected value 'bogus'"
2436  ],
2437  "jobs": []
2438 },
2439 "yes_no.yml": {
2440  "errors": [
2441   "yes_no.yml (Line: 5, Col: 24): Unexpected value 'yes'"
2442  ],
2443  "jobs": []
2444 }
2445}

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 3

↑↓ moveenter openesc close