@catladder/cli 0.0.0-next-6916db3c → 0.0.0-next-704ed9ba

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/CONTRIBUTING.md +1 -1
  2. package/README.md +2 -2
  3. package/dist/apps/cli/src/security/topics.json +15 -15
  4. package/dist/bundles/catci/index.js +1 -1
  5. package/dist/bundles/catenv/index.js +12 -4
  6. package/dist/bundles/catenv/xdg-open +0 -0
  7. package/dist/bundles/cli/clipboard_i686.exe +0 -0
  8. package/dist/bundles/cli/clipboard_x86_64.exe +0 -0
  9. package/dist/bundles/cli/index.js +13 -5
  10. package/dist/bundles/cli/xdg-open +0 -0
  11. package/dist/bundles/cli/xsel +0 -0
  12. package/dist/bundles/runner-images/changesets/scripts/changesetsRelease +0 -0
  13. package/dist/bundles/runner-images/jobs-default/Dockerfile +5 -6
  14. package/dist/bundles/runner-images/kubernetes/helm-charts/the-panter-chart/README.md +2 -2
  15. package/dist/bundles/runner-images/kubernetes/scripts/kubernetesCreateSecret +0 -0
  16. package/dist/bundles/runner-images/kubernetes/scripts/kubernetesDelete +0 -0
  17. package/dist/bundles/runner-images/kubernetes/scripts/kubernetesDeploy +0 -0
  18. package/dist/bundles/runner-images/kubernetes/scripts/kubernetesRollback +0 -0
  19. package/dist/bundles/skills/catladder-config/SKILL.md +1 -1
  20. package/dist/packages/pipeline/src/backends/github/createGithubJobs.js +6 -0
  21. package/dist/packages/pipeline/src/backends/github/createGithubJobs.js.map +1 -1
  22. package/dist/packages/pipeline/src/build/node/testJob.js +3 -1
  23. package/dist/packages/pipeline/src/build/node/testJob.js.map +1 -1
  24. package/dist/packages/pipeline/src/customImages/shippedImages.js +0 -2
  25. package/dist/packages/pipeline/src/customImages/shippedImages.js.map +1 -1
  26. package/dist/packages/pipeline/src/runner/index.d.ts +1 -1
  27. package/dist/packages/pipeline/src/runner/index.js.map +1 -1
  28. package/dist/packages/pipeline/src/types/config.d.ts +1 -1
  29. package/dist/packages/pipeline/src/types/hooks.d.ts +1 -1
  30. package/dist/packages/pipeline/src/verify/createVerifyJobs.js +3 -1
  31. package/dist/packages/pipeline/src/verify/createVerifyJobs.js.map +1 -1
  32. package/dist/runner-images/changesets/scripts/changesetsRelease +0 -0
  33. package/dist/runner-images/jobs-default/Dockerfile +5 -6
  34. package/dist/runner-images/kubernetes/helm-charts/the-panter-chart/README.md +2 -2
  35. package/dist/runner-images/kubernetes/scripts/kubernetesCreateSecret +0 -0
  36. package/dist/runner-images/kubernetes/scripts/kubernetesDelete +0 -0
  37. package/dist/runner-images/kubernetes/scripts/kubernetesDeploy +0 -0
  38. package/dist/runner-images/kubernetes/scripts/kubernetesRollback +0 -0
  39. package/dist/skills/catladder-config/SKILL.md +1 -1
  40. package/dist/tsconfig.tsbuildinfo +1 -1
  41. package/includes/envrc +1 -1
  42. package/package.json +5 -5
  43. package/src/security/topics.json +15 -15
  44. package/dist/bundles/runner-images/jobs-testing-chrome/Dockerfile +0 -15
  45. package/dist/runner-images/jobs-testing-chrome/Dockerfile +0 -15
package/CONTRIBUTING.md CHANGED
@@ -2,4 +2,4 @@
2
2
 
3
3
  [See contribution guide][docs-contribute].
4
4
 
5
- [docs-contribute]: https://catladder.git.panter.biz/catladder/docs/contribute "Contribution guide"
5
+ [docs-contribute]: https://panter.github.io/catladder/docs/contribute "Contribution guide"
package/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  [See the documentation][docs-getting-started].
8
8
 
9
- [docs-getting-started]: https://catladder.git.panter.biz/catladder/docs/getting_started "Getting started"
9
+ [docs-getting-started]: https://panter.github.io/catladder/docs/getting_started "Getting started"
10
10
 
11
11
  ## Usage
12
12
 
@@ -33,4 +33,4 @@ catladder -y project delete dev:web
33
33
 
34
34
  [See contribution guide][docs-contribute].
35
35
 
36
- [docs-contribute]: https://catladder.git.panter.biz/catladder/docs/contribute "Contribution guide"
36
+ [docs-contribute]: https://panter.github.io/catladder/docs/contribute "Contribution guide"
@@ -17,67 +17,67 @@
17
17
  {
18
18
  "description": "No sensitive information (passwords, keys, user data, ...) is logged or traced",
19
19
  "responsibles": 1,
20
- "more": "[Logging guide](https://www.notion.so/panterch/Long-story-logging-022722bb878f4724ae5b49e17667b630?pvs=4#9e5a36b7158a4953b73ec6a345bd8989), [Tracing guide](https://www.notion.so/panterch/Long-story-tracing-d8a9ec1ac2ff4fa78cefa8991233224e?pvs=4#535121b5bf9741fbaf8654b4b64d879d)"
20
+ "more": ""
21
21
  },
22
22
  {
23
23
  "description": "Passwords are stored hashed with salt and salt is not stored in the repository",
24
24
  "responsibles": 1,
25
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/hash.md)"
25
+ "more": ""
26
26
  },
27
27
  {
28
28
  "description": "Input that ends up in DOM is properly sanitized",
29
29
  "responsibles": 1,
30
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/xss.md)"
30
+ "more": ""
31
31
  },
32
32
  {
33
33
  "description": "All user inputs have reasonable validations",
34
34
  "responsibles": 1,
35
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/validation.md)"
35
+ "more": ""
36
36
  },
37
37
  {
38
38
  "description": "The app is not using cookies",
39
39
  "responsibles": 1,
40
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"
40
+ "more": ""
41
41
  },
42
42
  {
43
43
  "description": "The app is using cookies and cookies are properly configured",
44
44
  "responsibles": 1,
45
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"
45
+ "more": ""
46
46
  },
47
47
  {
48
48
  "description": "The app uses JWT with a secret and the secret is not stored in the repository",
49
49
  "responsibles": 1,
50
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"
50
+ "more": ""
51
51
  },
52
52
  {
53
53
  "description": "Authorization and user roles (RBAC) were reviewed thoroughly",
54
54
  "responsibles": 2,
55
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/authorization.md)"
55
+ "more": ""
56
56
  },
57
57
  {
58
58
  "description": "CORS headers do not use `*`",
59
59
  "responsibles": 1,
60
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cors.md)"
60
+ "more": ""
61
61
  },
62
62
  {
63
63
  "description": "CSP headers are properly configured (no `unsafe-inline` or `unsafe-eval`)",
64
64
  "responsibles": 1,
65
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/csp.md)"
65
+ "more": ""
66
66
  },
67
67
  {
68
68
  "description": "DoS defense mechanism is implemented",
69
69
  "responsibles": 1,
70
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/dos.md)"
70
+ "more": ""
71
71
  },
72
72
  {
73
73
  "description": "YAML/XML parsing is not used or used YAML/XML parsers have disabled DTD",
74
74
  "responsibles": 1,
75
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/dos.md)"
75
+ "more": ""
76
76
  },
77
77
  {
78
78
  "description": "The app implements CSRF prevention",
79
79
  "responsibles": 1,
80
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/csrf.md)"
80
+ "more": ""
81
81
  },
82
82
  {
83
83
  "description": "The app has a rate limitter",
@@ -87,12 +87,12 @@
87
87
  {
88
88
  "description": "The app has disabled GraphQL introspection and schema registry",
89
89
  "responsibles": 1,
90
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/graphql.md)"
90
+ "more": ""
91
91
  },
92
92
  {
93
93
  "description": "The app has set GraphQL complexity query limits",
94
94
  "responsibles": 1,
95
- "more": "[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/graphql.md)"
95
+ "more": ""
96
96
  },
97
97
  {
98
98
  "description": "`sitemap.xml` does not leak any routes with sensitive data",
@@ -22,4 +22,4 @@ e.exports=function(){var e=process.versions.node;var t=e.split(".");return{origi
22
22
  *
23
23
  * Copyright (c) 2015-present, Jon Schlinkert.
24
24
  * Released under the MIT License.
25
- */const n=r(7850);const toRegexRange=(e,t,r)=>{if(n(e)===false){throw new TypeError("toRegexRange: expected the first argument to be a number")}if(t===void 0||e===t){return String(e)}if(n(t)===false){throw new TypeError("toRegexRange: expected the second argument to be a number.")}let s={relaxZeros:true,...r};if(typeof s.strictZeros==="boolean"){s.relaxZeros=s.strictZeros===false}let o=String(s.relaxZeros);let i=String(s.shorthand);let a=String(s.capture);let u=String(s.wrap);let c=e+":"+t+"="+o+i+a+u;if(toRegexRange.cache.hasOwnProperty(c)){return toRegexRange.cache[c].result}let l=Math.min(e,t);let p=Math.max(e,t);if(Math.abs(l-p)===1){let r=e+"|"+t;if(s.capture){return`(${r})`}if(s.wrap===false){return r}return`(?:${r})`}let d=hasPadding(e)||hasPadding(t);let f={min:e,max:t,a:l,b:p};let h=[];let g=[];if(d){f.isPadded=d;f.maxLen=String(f.max).length}if(l<0){let e=p<0?Math.abs(p):1;g=splitToPatterns(e,Math.abs(l),f,s);l=f.a=0}if(p>=0){h=splitToPatterns(l,p,f,s)}f.negatives=g;f.positives=h;f.result=collatePatterns(g,h,s);if(s.capture===true){f.result=`(${f.result})`}else if(s.wrap!==false&&h.length+g.length>1){f.result=`(?:${f.result})`}toRegexRange.cache[c]=f;return f.result};function collatePatterns(e,t,r){let n=filterPatterns(e,t,"-",false,r)||[];let s=filterPatterns(t,e,"",false,r)||[];let o=filterPatterns(e,t,"-?",true,r)||[];let i=n.concat(o).concat(s);return i.join("|")}function splitToRanges(e,t){let r=1;let n=1;let s=countNines(e,r);let o=new Set([t]);while(e<=s&&s<=t){o.add(s);r+=1;s=countNines(e,r)}s=countZeros(t+1,n)-1;while(e<s&&s<=t){o.add(s);n+=1;s=countZeros(t+1,n)-1}o=[...o];o.sort(compare);return o}function rangeToPattern(e,t,r){if(e===t){return{pattern:e,count:[],digits:0}}let n=zip(e,t);let s=n.length;let o="";let i=0;for(let e=0;e<s;e++){let[t,s]=n[e];if(t===s){o+=t}else if(t!=="0"||s!=="9"){o+=toCharacterClass(t,s,r)}else{i++}}if(i){o+=r.shorthand===true?"\\d":"[0-9]"}return{pattern:o,count:[i],digits:s}}function splitToPatterns(e,t,r,n){let s=splitToRanges(e,t);let o=[];let i=e;let a;for(let e=0;e<s.length;e++){let t=s[e];let u=rangeToPattern(String(i),String(t),n);let c="";if(!r.isPadded&&a&&a.pattern===u.pattern){if(a.count.length>1){a.count.pop()}a.count.push(u.count[0]);a.string=a.pattern+toQuantifier(a.count);i=t+1;continue}if(r.isPadded){c=padZeros(t,r,n)}u.string=c+u.pattern+toQuantifier(u.count);o.push(u);i=t+1;a=u}return o}function filterPatterns(e,t,r,n,s){let o=[];for(let s of e){let{string:e}=s;if(!n&&!contains(t,"string",e)){o.push(r+e)}if(n&&contains(t,"string",e)){o.push(r+e)}}return o}function zip(e,t){let r=[];for(let n=0;n<e.length;n++)r.push([e[n],t[n]]);return r}function compare(e,t){return e>t?1:t>e?-1:0}function contains(e,t,r){return e.some((e=>e[t]===r))}function countNines(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function countZeros(e,t){return e-e%Math.pow(10,t)}function toQuantifier(e){let[t=0,r=""]=e;if(r||t>1){return`{${t+(r?","+r:"")}}`}return""}function toCharacterClass(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function hasPadding(e){return/^-?(0+)\d/.test(e)}function padZeros(e,t,r){if(!t.isPadded){return e}let n=Math.abs(t.maxLen-String(e).length);let s=r.relaxZeros!==false;switch(n){case 0:return"";case 1:return s?"0?":"0";case 2:return s?"0{0,2}":"00";default:{return s?`0{0,${n}}`:`0{${n}}`}}}toRegexRange.cache={};toRegexRange.clearCache=()=>toRegexRange.cache={};e.exports=toRegexRange},3340:(e,t,r)=>{e.exports=which;which.sync=whichSync;var n=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys";var s=r(6928);var o=n?";":":";var i=r(9648);function getNotFoundError(e){var t=new Error("not found: "+e);t.code="ENOENT";return t}function getPathInfo(e,t){var r=t.colon||o;var s=t.path||process.env.PATH||"";var i=[""];s=s.split(r);var a="";if(n){s.unshift(process.cwd());a=t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM";i=a.split(r);if(e.indexOf(".")!==-1&&i[0]!=="")i.unshift("")}if(e.match(/\//)||n&&e.match(/\\/))s=[""];return{env:s,ext:i,extExe:a}}function which(e,t,r){if(typeof t==="function"){r=t;t={}}var n=getPathInfo(e,t);var o=n.env;var a=n.ext;var u=n.extExe;var c=[];(function F(n,l){if(n===l){if(t.all&&c.length)return r(null,c);else return r(getNotFoundError(e))}var p=o[n];if(p.charAt(0)==='"'&&p.slice(-1)==='"')p=p.slice(1,-1);var d=s.join(p,e);if(!p&&/^\.[\\\/]/.test(e)){d=e.slice(0,2)+d}(function E(e,s){if(e===s)return F(n+1,l);var o=a[e];i(d+o,{pathExt:u},(function(n,i){if(!n&&i){if(t.all)c.push(d+o);else return r(null,d+o)}return E(e+1,s)}))})(0,a.length)})(0,o.length)}function whichSync(e,t){t=t||{};var r=getPathInfo(e,t);var n=r.env;var o=r.ext;var a=r.extExe;var u=[];for(var c=0,l=n.length;c<l;c++){var p=n[c];if(p.charAt(0)==='"'&&p.slice(-1)==='"')p=p.slice(1,-1);var d=s.join(p,e);if(!p&&/^\.[\\\/]/.test(e)){d=e.slice(0,2)+d}for(var f=0,h=o.length;f<h;f++){var g=d+o[f];var m;try{m=i.sync(g,{pathExt:a});if(m){if(t.all)u.push(g);else return g}}catch(e){}}}if(t.all&&u.length)return u;if(t.nothrow)return null;throw getNotFoundError(e)}},5872:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol==="function"&&e.constructor===Symbol?"symbol":typeof e};function isLower(e){return e>=97&&e<=122}function isUpper(e){return e>=65&&e<=90}function isDigit(e){return e>=48&&e<=57}function toUpper(e){return e-32}function toUpperSafe(e){if(isLower(e)){return e-32}return e}function toLower(e){return e+32}function camelize$1(e,t){var r=e.charCodeAt(0);if(isDigit(r)||isUpper(r)||r==t){return e}var n=[];var s=false;if(isUpper(r)){s=true;n.push(toLower(r))}else{n.push(r)}var o=e.length;for(var i=1;i<o;++i){var a=e.charCodeAt(i);if(a===t){s=true;a=e.charCodeAt(++i);if(isNaN(a)){return e}n.push(toUpperSafe(a))}else{n.push(a)}}return s?String.fromCharCode.apply(undefined,n):e}function decamelize$1(e,t){var r=e.charCodeAt(0);if(!isLower(r)){return e}var n=e.length;var s=false;var o=[];for(var i=0;i<n;++i){var a=e.charCodeAt(i);if(isUpper(a)){o.push(t);o.push(toLower(a));s=true}else{o.push(a)}}return s?String.fromCharCode.apply(undefined,o):e}function pascalize$1(e,t){var r=e.charCodeAt(0);if(isDigit(r)||r==t){return e}var n=e.length;var s=false;var o=[];for(var i=0;i<n;++i){var a=e.charCodeAt(i);if(a===t){s=true;a=e.charCodeAt(++i);if(isNaN(a)){return e}o.push(toUpperSafe(a))}else if(i===0&&isLower(a)){s=true;o.push(toUpper(a))}else{o.push(a)}}return s?String.fromCharCode.apply(undefined,o):e}function depascalize$1(e,t){var r=e.charCodeAt(0);if(!isUpper(r)){return e}var n=e.length;var s=false;var o=[];for(var i=0;i<n;++i){var a=e.charCodeAt(i);if(isUpper(a)){if(i>0){o.push(t)}o.push(toLower(a));s=true}else{o.push(a)}}return s?String.fromCharCode.apply(undefined,o):e}function shouldProcessValue(e){return e&&(typeof e==="undefined"?"undefined":r(e))=="object"&&!(e instanceof Date)&&!(e instanceof Function)}function processKeys(e,t,r){var n=void 0;if(e instanceof Array){n=[]}else{if(typeof e.prototype!=="undefined"){return e}n={}}for(var s in e){var o=e[s];if(typeof s==="string")s=t(s,r&&r.separator);if(shouldProcessValue(o)){n[s]=processKeys(o,t,r)}else{n[s]=o}}return n}function processKeysInPlace(e,t,r){var n=Object.keys(e);for(var s=0;s<n.length;++s){var o=n[s];var i=e[o];var a=t(o,r&&r.separator);if(a!==o){delete e[o]}if(shouldProcessValue(i)){e[a]=processKeys(i,t,r)}else{e[a]=i}}return e}function camelize$$1(e,t){return camelize$1(e,t&&t.charCodeAt(0)||95)}function decamelize$$1(e,t){return decamelize$1(e,t&&t.charCodeAt(0)||95)}function pascalize$$1(e,t){return pascalize$1(e,t&&t.charCodeAt(0)||95)}function depascalize$$1(e,t){return depascalize$1(e,t&&t.charCodeAt(0)||95)}function camelizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,camelize$$1,t);return processKeys(e,camelize$$1,t)}function decamelizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,decamelize$$1,t);return processKeys(e,decamelize$$1,t)}function pascalizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,pascalize$$1,t);return processKeys(e,pascalize$$1,t)}function depascalizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,depascalize$$1,t);return processKeys(e,depascalize$$1,t)}t.camelize=camelize$$1;t.decamelize=decamelize$$1;t.pascalize=pascalize$$1;t.depascalize=depascalize$$1;t.camelizeKeys=camelizeKeys;t.decamelizeKeys=decamelizeKeys;t.pascalizeKeys=pascalizeKeys;t.depascalizeKeys=depascalizeKeys},505:module=>{module.exports=eval("require")("spawn-sync")},5317:e=>{"use strict";e.exports=require("child_process")},4434:e=>{"use strict";e.exports=require("events")},9896:e=>{"use strict";e.exports=require("fs")},1943:e=>{"use strict";e.exports=require("fs/promises")},5692:e=>{"use strict";e.exports=require("https")},6928:e=>{"use strict";e.exports=require("path")},9023:e=>{"use strict";e.exports=require("util")},1955:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))};var s=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,s,o,i;return i={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function verb(e){return function(t){return step([e,t])}}function step(a){if(n)throw new TypeError("Generator is already executing.");while(i&&(i=0,a[0]&&(r=0)),r)try{if(n=1,s&&(o=a[0]&2?s["return"]:a[0]?s["throw"]||((o=s["return"])&&o.call(s),0):s.next)&&!(o=o.call(s,a[1])).done)return o;if(s=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:r.label++;return{value:a[1],done:false};case 5:r.label++;s=a[1];a=[0];continue;case 7:a=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){r.label=a[1];break}if(a[0]===6&&r.label<o[1]){r.label=o[1];o=a;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(a);break}if(o[2])r.ops.pop();r.trys.pop();continue}a=t.call(e,r)}catch(e){a=[6,e];s=0}finally{n=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};Object.defineProperty(t,"__esModule",{value:true});t.AsyncOption=void 0;var o=r(4883);var i=r(8593);var a=function(){function AsyncOption(e){this.promise=Promise.resolve(e)}AsyncOption.prototype.andThen=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isNone()){return[2,r]}t=e(r.value);return[2,t instanceof AsyncOption?t.promise:t]}))}))}))};AsyncOption.prototype.map=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){switch(n.label){case 0:if(r.isNone()){return[2,r]}t=i.Some;return[4,e(r.value)];case 1:return[2,t.apply(void 0,[n.sent()])]}}))}))}))};AsyncOption.prototype.or=function(e){return this.orElse((function(){return e}))};AsyncOption.prototype.orElse=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isSome()){return[2,r]}t=e();return[2,t instanceof AsyncOption?t.promise:t]}))}))}))};AsyncOption.prototype.toResult=function(e){return new o.AsyncResult(this.promise.then((function(t){return t.toResult(e)})))};AsyncOption.prototype.thenInternal=function(e){return new AsyncOption(this.promise.then(e))};return AsyncOption}();t.AsyncOption=a},4883:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))};var s=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,s,o,i;return i={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function verb(e){return function(t){return step([e,t])}}function step(a){if(n)throw new TypeError("Generator is already executing.");while(i&&(i=0,a[0]&&(r=0)),r)try{if(n=1,s&&(o=a[0]&2?s["return"]:a[0]?s["throw"]||((o=s["return"])&&o.call(s),0):s.next)&&!(o=o.call(s,a[1])).done)return o;if(s=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:r.label++;return{value:a[1],done:false};case 5:r.label++;s=a[1];a=[0];continue;case 7:a=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){r.label=a[1];break}if(a[0]===6&&r.label<o[1]){r.label=o[1];o=a;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(a);break}if(o[2])r.ops.pop();r.trys.pop();continue}a=t.call(e,r)}catch(e){a=[6,e];s=0}finally{n=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};Object.defineProperty(t,"__esModule",{value:true});t.AsyncResult=void 0;var o=r(1955);var i=r(7493);var a=function(){function AsyncResult(e){this.promise=Promise.resolve(e)}AsyncResult.prototype.andThen=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isErr()){return[2,r]}t=e(r.value);return[2,t instanceof AsyncResult?t.promise:t]}))}))}))};AsyncResult.prototype.map=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){switch(n.label){case 0:if(r.isErr()){return[2,r]}t=i.Ok;return[4,e(r.value)];case 1:return[2,t.apply(void 0,[n.sent()])]}}))}))}))};AsyncResult.prototype.mapErr=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){switch(n.label){case 0:if(r.isOk()){return[2,r]}t=i.Err;return[4,e(r.error)];case 1:return[2,t.apply(void 0,[n.sent()])]}}))}))}))};AsyncResult.prototype.or=function(e){return this.orElse((function(){return e}))};AsyncResult.prototype.orElse=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isOk()){return[2,r]}t=e(r.error);return[2,t instanceof AsyncResult?t.promise:t]}))}))}))};AsyncResult.prototype.toOption=function(){return new o.AsyncOption(this.promise.then((function(e){return e.toOption()})))};AsyncResult.prototype.thenInternal=function(e){return new AsyncResult(this.promise.then(e))};return AsyncResult}();t.AsyncResult=a},1709:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){if(n===undefined)n=r;var s=Object.getOwnPropertyDescriptor(t,r);if(!s||("get"in s?!t.__esModule:s.writable||s.configurable)){s={enumerable:true,get:function(){return t[r]}}}Object.defineProperty(e,n,s)}:function(e,t,r,n){if(n===undefined)n=r;e[n]=t[r]});var s=this&&this.__exportStar||function(e,t){for(var r in e)if(r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r))n(t,e,r)};Object.defineProperty(t,"__esModule",{value:true});s(r(1955),t);s(r(4883),t);s(r(7493),t);s(r(8593),t)},8593:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Option=t.Some=t.None=void 0;var n=r(1955);var s=r(9483);var o=r(7493);var i=function(){function NoneImpl(){}NoneImpl.prototype.isSome=function(){return false};NoneImpl.prototype.isNone=function(){return true};NoneImpl.prototype[Symbol.iterator]=function(){return{next:function(){return{done:true,value:undefined}}}};NoneImpl.prototype.unwrapOr=function(e){return e};NoneImpl.prototype.expect=function(e){throw new Error("".concat(e))};NoneImpl.prototype.unwrap=function(){throw new Error("Tried to unwrap None")};NoneImpl.prototype.map=function(e){return this};NoneImpl.prototype.mapOr=function(e,t){return e};NoneImpl.prototype.mapOrElse=function(e,t){return e()};NoneImpl.prototype.or=function(e){return e};NoneImpl.prototype.orElse=function(e){return e()};NoneImpl.prototype.andThen=function(e){return this};NoneImpl.prototype.toResult=function(e){return(0,o.Err)(e)};NoneImpl.prototype.toString=function(){return"None"};NoneImpl.prototype.toAsyncOption=function(){return new n.AsyncOption(t.None)};return NoneImpl}();t.None=new i;Object.freeze(t.None);var a=function(){function SomeImpl(e){if(!(this instanceof SomeImpl)){return new SomeImpl(e)}this.value=e}SomeImpl.prototype.isSome=function(){return true};SomeImpl.prototype.isNone=function(){return false};SomeImpl.prototype[Symbol.iterator]=function(){var e=Object(this.value);return Symbol.iterator in e?e[Symbol.iterator]():{next:function(){return{done:true,value:undefined}}}};SomeImpl.prototype.unwrapOr=function(e){return this.value};SomeImpl.prototype.expect=function(e){return this.value};SomeImpl.prototype.unwrap=function(){return this.value};SomeImpl.prototype.map=function(e){return(0,t.Some)(e(this.value))};SomeImpl.prototype.mapOr=function(e,t){return t(this.value)};SomeImpl.prototype.mapOrElse=function(e,t){return t(this.value)};SomeImpl.prototype.or=function(e){return this};SomeImpl.prototype.orElse=function(e){return this};SomeImpl.prototype.andThen=function(e){return e(this.value)};SomeImpl.prototype.toResult=function(e){return(0,o.Ok)(this.value)};SomeImpl.prototype.toAsyncOption=function(){return new n.AsyncOption(this)};SomeImpl.prototype.safeUnwrap=function(){return this.value};SomeImpl.prototype.toString=function(){return"Some(".concat((0,s.toString)(this.value),")")};SomeImpl.EMPTY=new SomeImpl(undefined);return SomeImpl}();t.Some=a;var u;(function(e){function all(){var e=[];for(var r=0;r<arguments.length;r++){e[r]=arguments[r]}var n=[];for(var s=0,o=e;s<o.length;s++){var i=o[s];if(i.isSome()){n.push(i.value)}else{return i}}return(0,t.Some)(n)}e.all=all;function any(){var e=[];for(var r=0;r<arguments.length;r++){e[r]=arguments[r]}for(var n=0,s=e;n<s.length;n++){var o=s[n];if(o.isSome()){return o}else{continue}}return t.None}e.any=any;function isOption(e){return e instanceof t.Some||e===t.None}e.isOption=isOption})(u||(t.Option=u={}))},7493:function(e,t,r){"use strict";var n=this&&this.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,s=t.length,o;n<s;n++){if(o||!(n in t)){if(!o)o=Array.prototype.slice.call(t,0,n);o[n]=t[n]}}return e.concat(o||Array.prototype.slice.call(t))};Object.defineProperty(t,"__esModule",{value:true});t.Result=t.Ok=t.OkImpl=t.Err=t.ErrImpl=void 0;var s=r(9483);var o=r(8593);var i=r(4883);var a=function(){function ErrImpl(e){if(!(this instanceof ErrImpl)){return new ErrImpl(e)}this.error=e;var t=(new Error).stack.split("\n").slice(2);if(t&&t.length>0&&t[0].includes("ErrImpl")){t.shift()}this._stack=t.join("\n")}ErrImpl.prototype.isOk=function(){return false};ErrImpl.prototype.isErr=function(){return true};ErrImpl.prototype[Symbol.iterator]=function(){return{next:function(){return{done:true,value:undefined}}}};ErrImpl.prototype.else=function(e){return e};ErrImpl.prototype.unwrapOr=function(e){return e};ErrImpl.prototype.expect=function(e){throw new Error("".concat(e," - Error: ").concat((0,s.toString)(this.error),"\n").concat(this._stack),{cause:this.error})};ErrImpl.prototype.expectErr=function(e){return this.error};ErrImpl.prototype.unwrap=function(){throw new Error("Tried to unwrap Error: ".concat((0,s.toString)(this.error),"\n").concat(this._stack),{cause:this.error})};ErrImpl.prototype.unwrapErr=function(){return this.error};ErrImpl.prototype.map=function(e){return this};ErrImpl.prototype.andThen=function(e){return this};ErrImpl.prototype.mapErr=function(e){return new t.Err(e(this.error))};ErrImpl.prototype.mapOr=function(e,t){return e};ErrImpl.prototype.mapOrElse=function(e,t){return e(this.error)};ErrImpl.prototype.or=function(e){return e};ErrImpl.prototype.orElse=function(e){return e(this.error)};ErrImpl.prototype.toOption=function(){return o.None};ErrImpl.prototype.toString=function(){return"Err(".concat((0,s.toString)(this.error),")")};Object.defineProperty(ErrImpl.prototype,"stack",{get:function(){return"".concat(this,"\n").concat(this._stack)},enumerable:false,configurable:true});ErrImpl.prototype.toAsyncResult=function(){return new i.AsyncResult(this)};ErrImpl.EMPTY=new ErrImpl(undefined);return ErrImpl}();t.ErrImpl=a;t.Err=a;var u=function(){function OkImpl(e){if(!(this instanceof OkImpl)){return new OkImpl(e)}this.value=e}OkImpl.prototype.isOk=function(){return true};OkImpl.prototype.isErr=function(){return false};OkImpl.prototype[Symbol.iterator]=function(){var e=Object(this.value);return Symbol.iterator in e?e[Symbol.iterator]():{next:function(){return{done:true,value:undefined}}}};OkImpl.prototype.else=function(e){return this.value};OkImpl.prototype.unwrapOr=function(e){return this.value};OkImpl.prototype.expect=function(e){return this.value};OkImpl.prototype.expectErr=function(e){throw new Error(e)};OkImpl.prototype.unwrap=function(){return this.value};OkImpl.prototype.unwrapErr=function(){throw new Error("Tried to unwrap Ok: ".concat((0,s.toString)(this.value)),{cause:this.value})};OkImpl.prototype.map=function(e){return new t.Ok(e(this.value))};OkImpl.prototype.andThen=function(e){return e(this.value)};OkImpl.prototype.mapErr=function(e){return this};OkImpl.prototype.mapOr=function(e,t){return t(this.value)};OkImpl.prototype.mapOrElse=function(e,t){return t(this.value)};OkImpl.prototype.or=function(e){return this};OkImpl.prototype.orElse=function(e){return this};OkImpl.prototype.toOption=function(){return(0,o.Some)(this.value)};OkImpl.prototype.safeUnwrap=function(){return this.value};OkImpl.prototype.toString=function(){return"Ok(".concat((0,s.toString)(this.value),")")};OkImpl.prototype.toAsyncResult=function(){return new i.AsyncResult(this)};OkImpl.EMPTY=new OkImpl(undefined);return OkImpl}();t.OkImpl=u;t.Ok=u;var c;(function(e){function all(e){var r=[];for(var s=1;s<arguments.length;s++){r[s-1]=arguments[s]}var o=e===undefined?[]:Array.isArray(e)?e:n([e],r,true);var i=[];for(var a=0,u=o;a<u.length;a++){var c=u[a];if(c.isOk()){i.push(c.value)}else{return c}}return new t.Ok(i)}e.all=all;function any(e){var r=[];for(var s=1;s<arguments.length;s++){r[s-1]=arguments[s]}var o=e===undefined?[]:Array.isArray(e)?e:n([e],r,true);var i=[];for(var a=0,u=o;a<u.length;a++){var c=u[a];if(c.isOk()){return c}else{i.push(c.error)}}return new t.Err(i)}e.any=any;function wrap(e){try{return new t.Ok(e())}catch(e){return new t.Err(e)}}e.wrap=wrap;function wrapAsync(e){try{return e().then((function(e){return new t.Ok(e)})).catch((function(e){return new t.Err(e)}))}catch(e){return Promise.resolve(new t.Err(e))}}e.wrapAsync=wrapAsync;function partition(e){return e.reduce((function(e,t){var r=e[0],s=e[1];return t.isOk()?[n(n([],r,true),[t.value],false),s]:[r,n(n([],s,true),[t.error],false)]}),[[],[]])}e.partition=partition;function isResult(e){return e instanceof t.Err||e instanceof t.Ok}e.isResult=isResult})(c||(t.Result=c={}))},9483:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.toString=void 0;function toString(e){var t=String(e);if(t==="[object Object]"){try{t=JSON.stringify(e)}catch(e){}}return t}t.toString=toString},6743:e=>{"use strict";e.exports=JSON.parse('[{"description":"No API keys or secrets are stored in repository","responsibles":1,"more":""},{"description":"The app does not provide password login","responsibles":1,"more":""},{"description":"Passwords are not stored","responsibles":1,"more":""},{"description":"No sensitive information (passwords, keys, user data, ...) is logged or traced","responsibles":1,"more":"[Logging guide](https://www.notion.so/panterch/Long-story-logging-022722bb878f4724ae5b49e17667b630?pvs=4#9e5a36b7158a4953b73ec6a345bd8989), [Tracing guide](https://www.notion.so/panterch/Long-story-tracing-d8a9ec1ac2ff4fa78cefa8991233224e?pvs=4#535121b5bf9741fbaf8654b4b64d879d)"},{"description":"Passwords are stored hashed with salt and salt is not stored in the repository","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/hash.md)"},{"description":"Input that ends up in DOM is properly sanitized","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/xss.md)"},{"description":"All user inputs have reasonable validations","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/validation.md)"},{"description":"The app is not using cookies","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"},{"description":"The app is using cookies and cookies are properly configured","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"},{"description":"The app uses JWT with a secret and the secret is not stored in the repository","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"},{"description":"Authorization and user roles (RBAC) were reviewed thoroughly","responsibles":2,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/authorization.md)"},{"description":"CORS headers do not use `*`","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cors.md)"},{"description":"CSP headers are properly configured (no `unsafe-inline` or `unsafe-eval`)","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/csp.md)"},{"description":"DoS defense mechanism is implemented","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/dos.md)"},{"description":"YAML/XML parsing is not used or used YAML/XML parsers have disabled DTD","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/dos.md)"},{"description":"The app implements CSRF prevention","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/csrf.md)"},{"description":"The app has a rate limitter","responsibles":1,"more":""},{"description":"The app has disabled GraphQL introspection and schema registry","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/graphql.md)"},{"description":"The app has set GraphQL complexity query limits","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/graphql.md)"},{"description":"`sitemap.xml` does not leak any routes with sensitive data","responsibles":1,"more":""},{"description":"Cloud storage is (private) configured to not leak any sensitive data publicly","responsibles":1,"more":""},{"description":"Security Dashboard checks weekly vulnerable dependencies https://dep.panter.swiss/","responsibles":1,"more":""},{"description":"The app has `.well-known/security.txt` https://securitytxt.org/","responsibles":1,"more":""}]')}};var __webpack_module_cache__={};function __nccwpck_require__(e){var t=__webpack_module_cache__[e];if(t!==undefined){return t.exports}var r=__webpack_module_cache__[e]={exports:{}};var n=true;try{__webpack_modules__[e].call(r.exports,r,r.exports,__nccwpck_require__);n=false}finally{if(n)delete __webpack_module_cache__[e]}return r.exports}(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;var t;__nccwpck_require__.t=function(r,n){if(n&1)r=this(r);if(n&8)return r;if(typeof r==="object"&&r){if(n&4&&r.__esModule)return r;if(n&16&&typeof r.then==="function")return r}var s=Object.create(null);__nccwpck_require__.r(s);var o={};t=t||[null,e({}),e([]),e(e)];for(var i=n&2&&r;typeof i=="object"&&!~t.indexOf(i);i=e(i)){Object.getOwnPropertyNames(i).forEach((e=>o[e]=()=>r[e]))}o["default"]=()=>r;__nccwpck_require__.d(s,o);return s}})();(()=>{__nccwpck_require__.d=(e,t)=>{for(var r in t){if(__nccwpck_require__.o(t,r)&&!__nccwpck_require__.o(e,r)){Object.defineProperty(e,r,{enumerable:true,get:t[r]})}}}})();(()=>{__nccwpck_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})();(()=>{__nccwpck_require__.r=e=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})}})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var __webpack_exports__={};(()=>{"use strict";var e=__webpack_exports__;Object.defineProperty(e,"__esModule",{value:true});const t=__nccwpck_require__(7650);const r=__nccwpck_require__(9392);const n=__nccwpck_require__(1276);const s=__nccwpck_require__(1206);const o=__nccwpck_require__(4472);const i=__nccwpck_require__(2596);const a=__nccwpck_require__(906);const u=__nccwpck_require__(3534);const c=`catci — catladder CI companion\n\nusage:\n catci security-audit ci-job <path> <gitlab-token> <main-branch> <project-id> <user-id>\n evaluates ${n.SECURITY_AUDIT_FILE_NAME}; creates a gitlab MR with the\n audit template when the document is missing (and exits 1)\n\n catci security-audit check <path>\n evaluates ${n.SECURITY_AUDIT_FILE_NAME}; exits 1 with instructions when\n the document is missing or unanswered (no remediation — works on\n any CI, including github)\n\n catci release changesets\n consumes pending .changeset/*.md files: computes the next version\n from the last v* tag, writes the changelog, commits, tags and\n pushes (no-op when no changesets are pending)\n\n catci release changeset-check\n MR/PR pipelines: reports which changesets the merge request adds,\n what is pending and what version merging would release (job log,\n changeset-report.md, sticky MR/PR comment where a token allows);\n exits 1 when the merge request adds no changeset\n\n catci release dispatch-tagged-workflow <tag>\n github only: dispatches the generated taggedRelease workflow for\n the tag (tags pushed with the job token don't trigger it)\n\n catci release github-queue-check\n github only, first step of the manual create-release task:\n releases right away when the main workflow run for HEAD is green\n (queued=false step output), queues the release when it is still\n running (queued=true, marker ref for the release-on-green\n workflow), fails when it concluded red\n\n catci release github-queued-guard <head-sha> <conclusion>\n github only, guard of the release-on-green workflow: consumes the\n queue marker when it matches the completed main run and decides\n whether the release step runs (release=true step output)\n\n catci publish npm --dir <dir> --env-type <envType> [--access <access>] [--registry <url>] [--dist-tag <tag>]\n npmPackage deploy job: derives version + dist-tag from the\n pipeline trigger (tagged release -> tag version @latest; branch/MR\n -> 0.0.0-<slug>-<sha> canary, with next/beta branches publishing\n under their own dist-tag), stamps package.json and runs npm\n publish (authenticated via the NPM_TOKEN secret)\n`;const fail=e=>{console.error(e);process.exit(1)};const evaluateGate=async e=>{const t=await(0,r.evaluateSecurityAudit)({path:e});if(t.isErr()){return null}if(t.value.score.answeredTopics===0){fail(`audit document has no answered topics\n`+`please answer security topics in ${n.SECURITY_AUDIT_FILE_NAME} by adding responsible people and check/cross in the table`)}console.log((0,r.makeSecurityAuditOverview)(t.value));return t.value};const securityAuditCheck=async e=>{const t=await evaluateGate(e);if(!t){fail(`could not evaluate ${n.SECURITY_AUDIT_FILE_NAME}\n`+`please add a ${n.SECURITY_AUDIT_FILE_NAME} security audit document to the repository `+`(run \`catladder security audit create\` locally to generate the template)`)}};const securityAuditCiJob=async(e,r,s,o,i)=>{const a=await evaluateGate(e);if(a){return}console.log("could not evaluate security audit document");console.log("creating new merge request with security audit template...");const c=new t.Gitlab({host:await(0,u.getGitlabHostUrl)(),token:r});const l=await(0,n.createSecurityAuditMergeRequest)({api:c,mainBranch:s,projectId:o,userId:parseInt(i)});if(l.isErr()){fail(`could not create merge request with security audit template: ${l.error}`);return}console.log("security audit merge request created successfully");console.log(`please finish the MR by updating ${n.SECURITY_AUDIT_FILE_NAME}: ${l.value.web_url}`);process.exit(1)};const main=async()=>{const[e,t,...r]=process.argv.slice(2);if(e==="security-audit"&&t==="ci-job"&&r.length===5){const[e,t,n,s,o]=r;return securityAuditCiJob(e,t,n,s,o)}if(e==="security-audit"&&t==="check"&&r.length===1){return securityAuditCheck(r[0])}if(e==="release"&&t==="changesets"&&r.length===0){return(0,s.changesetsReleaseJob)()}if(e==="release"&&t==="changeset-check"&&r.length===0){return(0,o.changesetCheckJob)()}if(e==="release"&&t==="dispatch-tagged-workflow"&&r.length===1){return(0,s.dispatchTaggedReleaseWorkflow)(r[0])}if(e==="release"&&t==="github-queue-check"&&r.length===0){return(0,i.githubQueueCheckJob)()}if(e==="release"&&t==="github-queued-guard"&&r.length===2){return(0,i.githubQueuedGuardJob)(r[0],r[1])}if(e==="publish"&&t==="npm"){const e=(0,a.parseNpmPublishArgs)(r);if(e){return(0,a.npmPublishJob)(e)}}fail(c)};main().catch((e=>{fail(`catci failed: ${e instanceof Error?e.message:e}`)}))})();module.exports=__webpack_exports__})();
25
+ */const n=r(7850);const toRegexRange=(e,t,r)=>{if(n(e)===false){throw new TypeError("toRegexRange: expected the first argument to be a number")}if(t===void 0||e===t){return String(e)}if(n(t)===false){throw new TypeError("toRegexRange: expected the second argument to be a number.")}let s={relaxZeros:true,...r};if(typeof s.strictZeros==="boolean"){s.relaxZeros=s.strictZeros===false}let o=String(s.relaxZeros);let i=String(s.shorthand);let a=String(s.capture);let u=String(s.wrap);let c=e+":"+t+"="+o+i+a+u;if(toRegexRange.cache.hasOwnProperty(c)){return toRegexRange.cache[c].result}let l=Math.min(e,t);let p=Math.max(e,t);if(Math.abs(l-p)===1){let r=e+"|"+t;if(s.capture){return`(${r})`}if(s.wrap===false){return r}return`(?:${r})`}let d=hasPadding(e)||hasPadding(t);let f={min:e,max:t,a:l,b:p};let h=[];let g=[];if(d){f.isPadded=d;f.maxLen=String(f.max).length}if(l<0){let e=p<0?Math.abs(p):1;g=splitToPatterns(e,Math.abs(l),f,s);l=f.a=0}if(p>=0){h=splitToPatterns(l,p,f,s)}f.negatives=g;f.positives=h;f.result=collatePatterns(g,h,s);if(s.capture===true){f.result=`(${f.result})`}else if(s.wrap!==false&&h.length+g.length>1){f.result=`(?:${f.result})`}toRegexRange.cache[c]=f;return f.result};function collatePatterns(e,t,r){let n=filterPatterns(e,t,"-",false,r)||[];let s=filterPatterns(t,e,"",false,r)||[];let o=filterPatterns(e,t,"-?",true,r)||[];let i=n.concat(o).concat(s);return i.join("|")}function splitToRanges(e,t){let r=1;let n=1;let s=countNines(e,r);let o=new Set([t]);while(e<=s&&s<=t){o.add(s);r+=1;s=countNines(e,r)}s=countZeros(t+1,n)-1;while(e<s&&s<=t){o.add(s);n+=1;s=countZeros(t+1,n)-1}o=[...o];o.sort(compare);return o}function rangeToPattern(e,t,r){if(e===t){return{pattern:e,count:[],digits:0}}let n=zip(e,t);let s=n.length;let o="";let i=0;for(let e=0;e<s;e++){let[t,s]=n[e];if(t===s){o+=t}else if(t!=="0"||s!=="9"){o+=toCharacterClass(t,s,r)}else{i++}}if(i){o+=r.shorthand===true?"\\d":"[0-9]"}return{pattern:o,count:[i],digits:s}}function splitToPatterns(e,t,r,n){let s=splitToRanges(e,t);let o=[];let i=e;let a;for(let e=0;e<s.length;e++){let t=s[e];let u=rangeToPattern(String(i),String(t),n);let c="";if(!r.isPadded&&a&&a.pattern===u.pattern){if(a.count.length>1){a.count.pop()}a.count.push(u.count[0]);a.string=a.pattern+toQuantifier(a.count);i=t+1;continue}if(r.isPadded){c=padZeros(t,r,n)}u.string=c+u.pattern+toQuantifier(u.count);o.push(u);i=t+1;a=u}return o}function filterPatterns(e,t,r,n,s){let o=[];for(let s of e){let{string:e}=s;if(!n&&!contains(t,"string",e)){o.push(r+e)}if(n&&contains(t,"string",e)){o.push(r+e)}}return o}function zip(e,t){let r=[];for(let n=0;n<e.length;n++)r.push([e[n],t[n]]);return r}function compare(e,t){return e>t?1:t>e?-1:0}function contains(e,t,r){return e.some((e=>e[t]===r))}function countNines(e,t){return Number(String(e).slice(0,-t)+"9".repeat(t))}function countZeros(e,t){return e-e%Math.pow(10,t)}function toQuantifier(e){let[t=0,r=""]=e;if(r||t>1){return`{${t+(r?","+r:"")}}`}return""}function toCharacterClass(e,t,r){return`[${e}${t-e===1?"":"-"}${t}]`}function hasPadding(e){return/^-?(0+)\d/.test(e)}function padZeros(e,t,r){if(!t.isPadded){return e}let n=Math.abs(t.maxLen-String(e).length);let s=r.relaxZeros!==false;switch(n){case 0:return"";case 1:return s?"0?":"0";case 2:return s?"0{0,2}":"00";default:{return s?`0{0,${n}}`:`0{${n}}`}}}toRegexRange.cache={};toRegexRange.clearCache=()=>toRegexRange.cache={};e.exports=toRegexRange},3340:(e,t,r)=>{e.exports=which;which.sync=whichSync;var n=process.platform==="win32"||process.env.OSTYPE==="cygwin"||process.env.OSTYPE==="msys";var s=r(6928);var o=n?";":":";var i=r(9648);function getNotFoundError(e){var t=new Error("not found: "+e);t.code="ENOENT";return t}function getPathInfo(e,t){var r=t.colon||o;var s=t.path||process.env.PATH||"";var i=[""];s=s.split(r);var a="";if(n){s.unshift(process.cwd());a=t.pathExt||process.env.PATHEXT||".EXE;.CMD;.BAT;.COM";i=a.split(r);if(e.indexOf(".")!==-1&&i[0]!=="")i.unshift("")}if(e.match(/\//)||n&&e.match(/\\/))s=[""];return{env:s,ext:i,extExe:a}}function which(e,t,r){if(typeof t==="function"){r=t;t={}}var n=getPathInfo(e,t);var o=n.env;var a=n.ext;var u=n.extExe;var c=[];(function F(n,l){if(n===l){if(t.all&&c.length)return r(null,c);else return r(getNotFoundError(e))}var p=o[n];if(p.charAt(0)==='"'&&p.slice(-1)==='"')p=p.slice(1,-1);var d=s.join(p,e);if(!p&&/^\.[\\\/]/.test(e)){d=e.slice(0,2)+d}(function E(e,s){if(e===s)return F(n+1,l);var o=a[e];i(d+o,{pathExt:u},(function(n,i){if(!n&&i){if(t.all)c.push(d+o);else return r(null,d+o)}return E(e+1,s)}))})(0,a.length)})(0,o.length)}function whichSync(e,t){t=t||{};var r=getPathInfo(e,t);var n=r.env;var o=r.ext;var a=r.extExe;var u=[];for(var c=0,l=n.length;c<l;c++){var p=n[c];if(p.charAt(0)==='"'&&p.slice(-1)==='"')p=p.slice(1,-1);var d=s.join(p,e);if(!p&&/^\.[\\\/]/.test(e)){d=e.slice(0,2)+d}for(var f=0,h=o.length;f<h;f++){var g=d+o[f];var m;try{m=i.sync(g,{pathExt:a});if(m){if(t.all)u.push(g);else return g}}catch(e){}}}if(t.all&&u.length)return u;if(t.nothrow)return null;throw getNotFoundError(e)}},5872:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});var r=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol==="function"&&e.constructor===Symbol?"symbol":typeof e};function isLower(e){return e>=97&&e<=122}function isUpper(e){return e>=65&&e<=90}function isDigit(e){return e>=48&&e<=57}function toUpper(e){return e-32}function toUpperSafe(e){if(isLower(e)){return e-32}return e}function toLower(e){return e+32}function camelize$1(e,t){var r=e.charCodeAt(0);if(isDigit(r)||isUpper(r)||r==t){return e}var n=[];var s=false;if(isUpper(r)){s=true;n.push(toLower(r))}else{n.push(r)}var o=e.length;for(var i=1;i<o;++i){var a=e.charCodeAt(i);if(a===t){s=true;a=e.charCodeAt(++i);if(isNaN(a)){return e}n.push(toUpperSafe(a))}else{n.push(a)}}return s?String.fromCharCode.apply(undefined,n):e}function decamelize$1(e,t){var r=e.charCodeAt(0);if(!isLower(r)){return e}var n=e.length;var s=false;var o=[];for(var i=0;i<n;++i){var a=e.charCodeAt(i);if(isUpper(a)){o.push(t);o.push(toLower(a));s=true}else{o.push(a)}}return s?String.fromCharCode.apply(undefined,o):e}function pascalize$1(e,t){var r=e.charCodeAt(0);if(isDigit(r)||r==t){return e}var n=e.length;var s=false;var o=[];for(var i=0;i<n;++i){var a=e.charCodeAt(i);if(a===t){s=true;a=e.charCodeAt(++i);if(isNaN(a)){return e}o.push(toUpperSafe(a))}else if(i===0&&isLower(a)){s=true;o.push(toUpper(a))}else{o.push(a)}}return s?String.fromCharCode.apply(undefined,o):e}function depascalize$1(e,t){var r=e.charCodeAt(0);if(!isUpper(r)){return e}var n=e.length;var s=false;var o=[];for(var i=0;i<n;++i){var a=e.charCodeAt(i);if(isUpper(a)){if(i>0){o.push(t)}o.push(toLower(a));s=true}else{o.push(a)}}return s?String.fromCharCode.apply(undefined,o):e}function shouldProcessValue(e){return e&&(typeof e==="undefined"?"undefined":r(e))=="object"&&!(e instanceof Date)&&!(e instanceof Function)}function processKeys(e,t,r){var n=void 0;if(e instanceof Array){n=[]}else{if(typeof e.prototype!=="undefined"){return e}n={}}for(var s in e){var o=e[s];if(typeof s==="string")s=t(s,r&&r.separator);if(shouldProcessValue(o)){n[s]=processKeys(o,t,r)}else{n[s]=o}}return n}function processKeysInPlace(e,t,r){var n=Object.keys(e);for(var s=0;s<n.length;++s){var o=n[s];var i=e[o];var a=t(o,r&&r.separator);if(a!==o){delete e[o]}if(shouldProcessValue(i)){e[a]=processKeys(i,t,r)}else{e[a]=i}}return e}function camelize$$1(e,t){return camelize$1(e,t&&t.charCodeAt(0)||95)}function decamelize$$1(e,t){return decamelize$1(e,t&&t.charCodeAt(0)||95)}function pascalize$$1(e,t){return pascalize$1(e,t&&t.charCodeAt(0)||95)}function depascalize$$1(e,t){return depascalize$1(e,t&&t.charCodeAt(0)||95)}function camelizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,camelize$$1,t);return processKeys(e,camelize$$1,t)}function decamelizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,decamelize$$1,t);return processKeys(e,decamelize$$1,t)}function pascalizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,pascalize$$1,t);return processKeys(e,pascalize$$1,t)}function depascalizeKeys(e,t){t=t||{};if(!shouldProcessValue(e))return e;if(t.inPlace)return processKeysInPlace(e,depascalize$$1,t);return processKeys(e,depascalize$$1,t)}t.camelize=camelize$$1;t.decamelize=decamelize$$1;t.pascalize=pascalize$$1;t.depascalize=depascalize$$1;t.camelizeKeys=camelizeKeys;t.decamelizeKeys=decamelizeKeys;t.pascalizeKeys=pascalizeKeys;t.depascalizeKeys=depascalizeKeys},505:module=>{module.exports=eval("require")("spawn-sync")},5317:e=>{"use strict";e.exports=require("child_process")},4434:e=>{"use strict";e.exports=require("events")},9896:e=>{"use strict";e.exports=require("fs")},1943:e=>{"use strict";e.exports=require("fs/promises")},5692:e=>{"use strict";e.exports=require("https")},6928:e=>{"use strict";e.exports=require("path")},9023:e=>{"use strict";e.exports=require("util")},1955:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))};var s=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,s,o,i;return i={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function verb(e){return function(t){return step([e,t])}}function step(a){if(n)throw new TypeError("Generator is already executing.");while(i&&(i=0,a[0]&&(r=0)),r)try{if(n=1,s&&(o=a[0]&2?s["return"]:a[0]?s["throw"]||((o=s["return"])&&o.call(s),0):s.next)&&!(o=o.call(s,a[1])).done)return o;if(s=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:r.label++;return{value:a[1],done:false};case 5:r.label++;s=a[1];a=[0];continue;case 7:a=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){r.label=a[1];break}if(a[0]===6&&r.label<o[1]){r.label=o[1];o=a;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(a);break}if(o[2])r.ops.pop();r.trys.pop();continue}a=t.call(e,r)}catch(e){a=[6,e];s=0}finally{n=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};Object.defineProperty(t,"__esModule",{value:true});t.AsyncOption=void 0;var o=r(4883);var i=r(8593);var a=function(){function AsyncOption(e){this.promise=Promise.resolve(e)}AsyncOption.prototype.andThen=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isNone()){return[2,r]}t=e(r.value);return[2,t instanceof AsyncOption?t.promise:t]}))}))}))};AsyncOption.prototype.map=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){switch(n.label){case 0:if(r.isNone()){return[2,r]}t=i.Some;return[4,e(r.value)];case 1:return[2,t.apply(void 0,[n.sent()])]}}))}))}))};AsyncOption.prototype.or=function(e){return this.orElse((function(){return e}))};AsyncOption.prototype.orElse=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isSome()){return[2,r]}t=e();return[2,t instanceof AsyncOption?t.promise:t]}))}))}))};AsyncOption.prototype.toResult=function(e){return new o.AsyncResult(this.promise.then((function(t){return t.toResult(e)})))};AsyncOption.prototype.thenInternal=function(e){return new AsyncOption(this.promise.then(e))};return AsyncOption}();t.AsyncOption=a},4883:function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){function adopt(e){return e instanceof r?e:new r((function(t){t(e)}))}return new(r||(r=Promise))((function(r,s){function fulfilled(e){try{step(n.next(e))}catch(e){s(e)}}function rejected(e){try{step(n["throw"](e))}catch(e){s(e)}}function step(e){e.done?r(e.value):adopt(e.value).then(fulfilled,rejected)}step((n=n.apply(e,t||[])).next())}))};var s=this&&this.__generator||function(e,t){var r={label:0,sent:function(){if(o[0]&1)throw o[1];return o[1]},trys:[],ops:[]},n,s,o,i;return i={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(i[Symbol.iterator]=function(){return this}),i;function verb(e){return function(t){return step([e,t])}}function step(a){if(n)throw new TypeError("Generator is already executing.");while(i&&(i=0,a[0]&&(r=0)),r)try{if(n=1,s&&(o=a[0]&2?s["return"]:a[0]?s["throw"]||((o=s["return"])&&o.call(s),0):s.next)&&!(o=o.call(s,a[1])).done)return o;if(s=0,o)a=[a[0]&2,o.value];switch(a[0]){case 0:case 1:o=a;break;case 4:r.label++;return{value:a[1],done:false};case 5:r.label++;s=a[1];a=[0];continue;case 7:a=r.ops.pop();r.trys.pop();continue;default:if(!(o=r.trys,o=o.length>0&&o[o.length-1])&&(a[0]===6||a[0]===2)){r=0;continue}if(a[0]===3&&(!o||a[1]>o[0]&&a[1]<o[3])){r.label=a[1];break}if(a[0]===6&&r.label<o[1]){r.label=o[1];o=a;break}if(o&&r.label<o[2]){r.label=o[2];r.ops.push(a);break}if(o[2])r.ops.pop();r.trys.pop();continue}a=t.call(e,r)}catch(e){a=[6,e];s=0}finally{n=o=0}if(a[0]&5)throw a[1];return{value:a[0]?a[1]:void 0,done:true}}};Object.defineProperty(t,"__esModule",{value:true});t.AsyncResult=void 0;var o=r(1955);var i=r(7493);var a=function(){function AsyncResult(e){this.promise=Promise.resolve(e)}AsyncResult.prototype.andThen=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isErr()){return[2,r]}t=e(r.value);return[2,t instanceof AsyncResult?t.promise:t]}))}))}))};AsyncResult.prototype.map=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){switch(n.label){case 0:if(r.isErr()){return[2,r]}t=i.Ok;return[4,e(r.value)];case 1:return[2,t.apply(void 0,[n.sent()])]}}))}))}))};AsyncResult.prototype.mapErr=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){switch(n.label){case 0:if(r.isOk()){return[2,r]}t=i.Err;return[4,e(r.error)];case 1:return[2,t.apply(void 0,[n.sent()])]}}))}))}))};AsyncResult.prototype.or=function(e){return this.orElse((function(){return e}))};AsyncResult.prototype.orElse=function(e){var t=this;return this.thenInternal((function(r){return n(t,void 0,void 0,(function(){var t;return s(this,(function(n){if(r.isOk()){return[2,r]}t=e(r.error);return[2,t instanceof AsyncResult?t.promise:t]}))}))}))};AsyncResult.prototype.toOption=function(){return new o.AsyncOption(this.promise.then((function(e){return e.toOption()})))};AsyncResult.prototype.thenInternal=function(e){return new AsyncResult(this.promise.then(e))};return AsyncResult}();t.AsyncResult=a},1709:function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){if(n===undefined)n=r;var s=Object.getOwnPropertyDescriptor(t,r);if(!s||("get"in s?!t.__esModule:s.writable||s.configurable)){s={enumerable:true,get:function(){return t[r]}}}Object.defineProperty(e,n,s)}:function(e,t,r,n){if(n===undefined)n=r;e[n]=t[r]});var s=this&&this.__exportStar||function(e,t){for(var r in e)if(r!=="default"&&!Object.prototype.hasOwnProperty.call(t,r))n(t,e,r)};Object.defineProperty(t,"__esModule",{value:true});s(r(1955),t);s(r(4883),t);s(r(7493),t);s(r(8593),t)},8593:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.Option=t.Some=t.None=void 0;var n=r(1955);var s=r(9483);var o=r(7493);var i=function(){function NoneImpl(){}NoneImpl.prototype.isSome=function(){return false};NoneImpl.prototype.isNone=function(){return true};NoneImpl.prototype[Symbol.iterator]=function(){return{next:function(){return{done:true,value:undefined}}}};NoneImpl.prototype.unwrapOr=function(e){return e};NoneImpl.prototype.expect=function(e){throw new Error("".concat(e))};NoneImpl.prototype.unwrap=function(){throw new Error("Tried to unwrap None")};NoneImpl.prototype.map=function(e){return this};NoneImpl.prototype.mapOr=function(e,t){return e};NoneImpl.prototype.mapOrElse=function(e,t){return e()};NoneImpl.prototype.or=function(e){return e};NoneImpl.prototype.orElse=function(e){return e()};NoneImpl.prototype.andThen=function(e){return this};NoneImpl.prototype.toResult=function(e){return(0,o.Err)(e)};NoneImpl.prototype.toString=function(){return"None"};NoneImpl.prototype.toAsyncOption=function(){return new n.AsyncOption(t.None)};return NoneImpl}();t.None=new i;Object.freeze(t.None);var a=function(){function SomeImpl(e){if(!(this instanceof SomeImpl)){return new SomeImpl(e)}this.value=e}SomeImpl.prototype.isSome=function(){return true};SomeImpl.prototype.isNone=function(){return false};SomeImpl.prototype[Symbol.iterator]=function(){var e=Object(this.value);return Symbol.iterator in e?e[Symbol.iterator]():{next:function(){return{done:true,value:undefined}}}};SomeImpl.prototype.unwrapOr=function(e){return this.value};SomeImpl.prototype.expect=function(e){return this.value};SomeImpl.prototype.unwrap=function(){return this.value};SomeImpl.prototype.map=function(e){return(0,t.Some)(e(this.value))};SomeImpl.prototype.mapOr=function(e,t){return t(this.value)};SomeImpl.prototype.mapOrElse=function(e,t){return t(this.value)};SomeImpl.prototype.or=function(e){return this};SomeImpl.prototype.orElse=function(e){return this};SomeImpl.prototype.andThen=function(e){return e(this.value)};SomeImpl.prototype.toResult=function(e){return(0,o.Ok)(this.value)};SomeImpl.prototype.toAsyncOption=function(){return new n.AsyncOption(this)};SomeImpl.prototype.safeUnwrap=function(){return this.value};SomeImpl.prototype.toString=function(){return"Some(".concat((0,s.toString)(this.value),")")};SomeImpl.EMPTY=new SomeImpl(undefined);return SomeImpl}();t.Some=a;var u;(function(e){function all(){var e=[];for(var r=0;r<arguments.length;r++){e[r]=arguments[r]}var n=[];for(var s=0,o=e;s<o.length;s++){var i=o[s];if(i.isSome()){n.push(i.value)}else{return i}}return(0,t.Some)(n)}e.all=all;function any(){var e=[];for(var r=0;r<arguments.length;r++){e[r]=arguments[r]}for(var n=0,s=e;n<s.length;n++){var o=s[n];if(o.isSome()){return o}else{continue}}return t.None}e.any=any;function isOption(e){return e instanceof t.Some||e===t.None}e.isOption=isOption})(u||(t.Option=u={}))},7493:function(e,t,r){"use strict";var n=this&&this.__spreadArray||function(e,t,r){if(r||arguments.length===2)for(var n=0,s=t.length,o;n<s;n++){if(o||!(n in t)){if(!o)o=Array.prototype.slice.call(t,0,n);o[n]=t[n]}}return e.concat(o||Array.prototype.slice.call(t))};Object.defineProperty(t,"__esModule",{value:true});t.Result=t.Ok=t.OkImpl=t.Err=t.ErrImpl=void 0;var s=r(9483);var o=r(8593);var i=r(4883);var a=function(){function ErrImpl(e){if(!(this instanceof ErrImpl)){return new ErrImpl(e)}this.error=e;var t=(new Error).stack.split("\n").slice(2);if(t&&t.length>0&&t[0].includes("ErrImpl")){t.shift()}this._stack=t.join("\n")}ErrImpl.prototype.isOk=function(){return false};ErrImpl.prototype.isErr=function(){return true};ErrImpl.prototype[Symbol.iterator]=function(){return{next:function(){return{done:true,value:undefined}}}};ErrImpl.prototype.else=function(e){return e};ErrImpl.prototype.unwrapOr=function(e){return e};ErrImpl.prototype.expect=function(e){throw new Error("".concat(e," - Error: ").concat((0,s.toString)(this.error),"\n").concat(this._stack),{cause:this.error})};ErrImpl.prototype.expectErr=function(e){return this.error};ErrImpl.prototype.unwrap=function(){throw new Error("Tried to unwrap Error: ".concat((0,s.toString)(this.error),"\n").concat(this._stack),{cause:this.error})};ErrImpl.prototype.unwrapErr=function(){return this.error};ErrImpl.prototype.map=function(e){return this};ErrImpl.prototype.andThen=function(e){return this};ErrImpl.prototype.mapErr=function(e){return new t.Err(e(this.error))};ErrImpl.prototype.mapOr=function(e,t){return e};ErrImpl.prototype.mapOrElse=function(e,t){return e(this.error)};ErrImpl.prototype.or=function(e){return e};ErrImpl.prototype.orElse=function(e){return e(this.error)};ErrImpl.prototype.toOption=function(){return o.None};ErrImpl.prototype.toString=function(){return"Err(".concat((0,s.toString)(this.error),")")};Object.defineProperty(ErrImpl.prototype,"stack",{get:function(){return"".concat(this,"\n").concat(this._stack)},enumerable:false,configurable:true});ErrImpl.prototype.toAsyncResult=function(){return new i.AsyncResult(this)};ErrImpl.EMPTY=new ErrImpl(undefined);return ErrImpl}();t.ErrImpl=a;t.Err=a;var u=function(){function OkImpl(e){if(!(this instanceof OkImpl)){return new OkImpl(e)}this.value=e}OkImpl.prototype.isOk=function(){return true};OkImpl.prototype.isErr=function(){return false};OkImpl.prototype[Symbol.iterator]=function(){var e=Object(this.value);return Symbol.iterator in e?e[Symbol.iterator]():{next:function(){return{done:true,value:undefined}}}};OkImpl.prototype.else=function(e){return this.value};OkImpl.prototype.unwrapOr=function(e){return this.value};OkImpl.prototype.expect=function(e){return this.value};OkImpl.prototype.expectErr=function(e){throw new Error(e)};OkImpl.prototype.unwrap=function(){return this.value};OkImpl.prototype.unwrapErr=function(){throw new Error("Tried to unwrap Ok: ".concat((0,s.toString)(this.value)),{cause:this.value})};OkImpl.prototype.map=function(e){return new t.Ok(e(this.value))};OkImpl.prototype.andThen=function(e){return e(this.value)};OkImpl.prototype.mapErr=function(e){return this};OkImpl.prototype.mapOr=function(e,t){return t(this.value)};OkImpl.prototype.mapOrElse=function(e,t){return t(this.value)};OkImpl.prototype.or=function(e){return this};OkImpl.prototype.orElse=function(e){return this};OkImpl.prototype.toOption=function(){return(0,o.Some)(this.value)};OkImpl.prototype.safeUnwrap=function(){return this.value};OkImpl.prototype.toString=function(){return"Ok(".concat((0,s.toString)(this.value),")")};OkImpl.prototype.toAsyncResult=function(){return new i.AsyncResult(this)};OkImpl.EMPTY=new OkImpl(undefined);return OkImpl}();t.OkImpl=u;t.Ok=u;var c;(function(e){function all(e){var r=[];for(var s=1;s<arguments.length;s++){r[s-1]=arguments[s]}var o=e===undefined?[]:Array.isArray(e)?e:n([e],r,true);var i=[];for(var a=0,u=o;a<u.length;a++){var c=u[a];if(c.isOk()){i.push(c.value)}else{return c}}return new t.Ok(i)}e.all=all;function any(e){var r=[];for(var s=1;s<arguments.length;s++){r[s-1]=arguments[s]}var o=e===undefined?[]:Array.isArray(e)?e:n([e],r,true);var i=[];for(var a=0,u=o;a<u.length;a++){var c=u[a];if(c.isOk()){return c}else{i.push(c.error)}}return new t.Err(i)}e.any=any;function wrap(e){try{return new t.Ok(e())}catch(e){return new t.Err(e)}}e.wrap=wrap;function wrapAsync(e){try{return e().then((function(e){return new t.Ok(e)})).catch((function(e){return new t.Err(e)}))}catch(e){return Promise.resolve(new t.Err(e))}}e.wrapAsync=wrapAsync;function partition(e){return e.reduce((function(e,t){var r=e[0],s=e[1];return t.isOk()?[n(n([],r,true),[t.value],false),s]:[r,n(n([],s,true),[t.error],false)]}),[[],[]])}e.partition=partition;function isResult(e){return e instanceof t.Err||e instanceof t.Ok}e.isResult=isResult})(c||(t.Result=c={}))},9483:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:true});t.toString=void 0;function toString(e){var t=String(e);if(t==="[object Object]"){try{t=JSON.stringify(e)}catch(e){}}return t}t.toString=toString},6743:e=>{"use strict";e.exports=JSON.parse('[{"description":"No API keys or secrets are stored in repository","responsibles":1,"more":""},{"description":"The app does not provide password login","responsibles":1,"more":""},{"description":"Passwords are not stored","responsibles":1,"more":""},{"description":"No sensitive information (passwords, keys, user data, ...) is logged or traced","responsibles":1,"more":""},{"description":"Passwords are stored hashed with salt and salt is not stored in the repository","responsibles":1,"more":""},{"description":"Input that ends up in DOM is properly sanitized","responsibles":1,"more":""},{"description":"All user inputs have reasonable validations","responsibles":1,"more":""},{"description":"The app is not using cookies","responsibles":1,"more":""},{"description":"The app is using cookies and cookies are properly configured","responsibles":1,"more":""},{"description":"The app uses JWT with a secret and the secret is not stored in the repository","responsibles":1,"more":""},{"description":"Authorization and user roles (RBAC) were reviewed thoroughly","responsibles":2,"more":""},{"description":"CORS headers do not use `*`","responsibles":1,"more":""},{"description":"CSP headers are properly configured (no `unsafe-inline` or `unsafe-eval`)","responsibles":1,"more":""},{"description":"DoS defense mechanism is implemented","responsibles":1,"more":""},{"description":"YAML/XML parsing is not used or used YAML/XML parsers have disabled DTD","responsibles":1,"more":""},{"description":"The app implements CSRF prevention","responsibles":1,"more":""},{"description":"The app has a rate limitter","responsibles":1,"more":""},{"description":"The app has disabled GraphQL introspection and schema registry","responsibles":1,"more":""},{"description":"The app has set GraphQL complexity query limits","responsibles":1,"more":""},{"description":"`sitemap.xml` does not leak any routes with sensitive data","responsibles":1,"more":""},{"description":"Cloud storage is (private) configured to not leak any sensitive data publicly","responsibles":1,"more":""},{"description":"Security Dashboard checks weekly vulnerable dependencies https://dep.panter.swiss/","responsibles":1,"more":""},{"description":"The app has `.well-known/security.txt` https://securitytxt.org/","responsibles":1,"more":""}]')}};var __webpack_module_cache__={};function __nccwpck_require__(e){var t=__webpack_module_cache__[e];if(t!==undefined){return t.exports}var r=__webpack_module_cache__[e]={exports:{}};var n=true;try{__webpack_modules__[e].call(r.exports,r,r.exports,__nccwpck_require__);n=false}finally{if(n)delete __webpack_module_cache__[e]}return r.exports}(()=>{var e=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__;var t;__nccwpck_require__.t=function(r,n){if(n&1)r=this(r);if(n&8)return r;if(typeof r==="object"&&r){if(n&4&&r.__esModule)return r;if(n&16&&typeof r.then==="function")return r}var s=Object.create(null);__nccwpck_require__.r(s);var o={};t=t||[null,e({}),e([]),e(e)];for(var i=n&2&&r;typeof i=="object"&&!~t.indexOf(i);i=e(i)){Object.getOwnPropertyNames(i).forEach((e=>o[e]=()=>r[e]))}o["default"]=()=>r;__nccwpck_require__.d(s,o);return s}})();(()=>{__nccwpck_require__.d=(e,t)=>{for(var r in t){if(__nccwpck_require__.o(t,r)&&!__nccwpck_require__.o(e,r)){Object.defineProperty(e,r,{enumerable:true,get:t[r]})}}}})();(()=>{__nccwpck_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t)})();(()=>{__nccwpck_require__.r=e=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(e,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(e,"__esModule",{value:true})}})();if(typeof __nccwpck_require__!=="undefined")__nccwpck_require__.ab=__dirname+"/";var __webpack_exports__={};(()=>{"use strict";var e=__webpack_exports__;Object.defineProperty(e,"__esModule",{value:true});const t=__nccwpck_require__(7650);const r=__nccwpck_require__(9392);const n=__nccwpck_require__(1276);const s=__nccwpck_require__(1206);const o=__nccwpck_require__(4472);const i=__nccwpck_require__(2596);const a=__nccwpck_require__(906);const u=__nccwpck_require__(3534);const c=`catci — catladder CI companion\n\nusage:\n catci security-audit ci-job <path> <gitlab-token> <main-branch> <project-id> <user-id>\n evaluates ${n.SECURITY_AUDIT_FILE_NAME}; creates a gitlab MR with the\n audit template when the document is missing (and exits 1)\n\n catci security-audit check <path>\n evaluates ${n.SECURITY_AUDIT_FILE_NAME}; exits 1 with instructions when\n the document is missing or unanswered (no remediation — works on\n any CI, including github)\n\n catci release changesets\n consumes pending .changeset/*.md files: computes the next version\n from the last v* tag, writes the changelog, commits, tags and\n pushes (no-op when no changesets are pending)\n\n catci release changeset-check\n MR/PR pipelines: reports which changesets the merge request adds,\n what is pending and what version merging would release (job log,\n changeset-report.md, sticky MR/PR comment where a token allows);\n exits 1 when the merge request adds no changeset\n\n catci release dispatch-tagged-workflow <tag>\n github only: dispatches the generated taggedRelease workflow for\n the tag (tags pushed with the job token don't trigger it)\n\n catci release github-queue-check\n github only, first step of the manual create-release task:\n releases right away when the main workflow run for HEAD is green\n (queued=false step output), queues the release when it is still\n running (queued=true, marker ref for the release-on-green\n workflow), fails when it concluded red\n\n catci release github-queued-guard <head-sha> <conclusion>\n github only, guard of the release-on-green workflow: consumes the\n queue marker when it matches the completed main run and decides\n whether the release step runs (release=true step output)\n\n catci publish npm --dir <dir> --env-type <envType> [--access <access>] [--registry <url>] [--dist-tag <tag>]\n npmPackage deploy job: derives version + dist-tag from the\n pipeline trigger (tagged release -> tag version @latest; branch/MR\n -> 0.0.0-<slug>-<sha> canary, with next/beta branches publishing\n under their own dist-tag), stamps package.json and runs npm\n publish (authenticated via the NPM_TOKEN secret)\n`;const fail=e=>{console.error(e);process.exit(1)};const evaluateGate=async e=>{const t=await(0,r.evaluateSecurityAudit)({path:e});if(t.isErr()){return null}if(t.value.score.answeredTopics===0){fail(`audit document has no answered topics\n`+`please answer security topics in ${n.SECURITY_AUDIT_FILE_NAME} by adding responsible people and check/cross in the table`)}console.log((0,r.makeSecurityAuditOverview)(t.value));return t.value};const securityAuditCheck=async e=>{const t=await evaluateGate(e);if(!t){fail(`could not evaluate ${n.SECURITY_AUDIT_FILE_NAME}\n`+`please add a ${n.SECURITY_AUDIT_FILE_NAME} security audit document to the repository `+`(run \`catladder security audit create\` locally to generate the template)`)}};const securityAuditCiJob=async(e,r,s,o,i)=>{const a=await evaluateGate(e);if(a){return}console.log("could not evaluate security audit document");console.log("creating new merge request with security audit template...");const c=new t.Gitlab({host:await(0,u.getGitlabHostUrl)(),token:r});const l=await(0,n.createSecurityAuditMergeRequest)({api:c,mainBranch:s,projectId:o,userId:parseInt(i)});if(l.isErr()){fail(`could not create merge request with security audit template: ${l.error}`);return}console.log("security audit merge request created successfully");console.log(`please finish the MR by updating ${n.SECURITY_AUDIT_FILE_NAME}: ${l.value.web_url}`);process.exit(1)};const main=async()=>{const[e,t,...r]=process.argv.slice(2);if(e==="security-audit"&&t==="ci-job"&&r.length===5){const[e,t,n,s,o]=r;return securityAuditCiJob(e,t,n,s,o)}if(e==="security-audit"&&t==="check"&&r.length===1){return securityAuditCheck(r[0])}if(e==="release"&&t==="changesets"&&r.length===0){return(0,s.changesetsReleaseJob)()}if(e==="release"&&t==="changeset-check"&&r.length===0){return(0,o.changesetCheckJob)()}if(e==="release"&&t==="dispatch-tagged-workflow"&&r.length===1){return(0,s.dispatchTaggedReleaseWorkflow)(r[0])}if(e==="release"&&t==="github-queue-check"&&r.length===0){return(0,i.githubQueueCheckJob)()}if(e==="release"&&t==="github-queued-guard"&&r.length===2){return(0,i.githubQueuedGuardJob)(r[0],r[1])}if(e==="publish"&&t==="npm"){const e=(0,a.parseNpmPublishArgs)(r);if(e){return(0,a.npmPublishJob)(e)}}fail(c)};main().catch((e=>{fail(`catci failed: ${e instanceof Error?e.message:e}`)}))})();module.exports=__webpack_exports__})();
@@ -3036,6 +3036,12 @@ const makeGithubJob = (context, job, allJobs, uploadProviderIds, images, scripts
3036
3036
  ...(Object.keys(services).length > 0 ? { services } : {}),
3037
3037
  ...(githubEnvironment ? { environment: githubEnvironment } : {}),
3038
3038
  ...(permissions ? { permissions } : {}),
3039
+ // gitlab's allow_failure has a direct github counterpart. Without
3040
+ // this the flag was silently dropped: a `pages` deploy (allowFailure
3041
+ // by default, so a broken site publish cannot block the pipeline)
3042
+ // failed the whole workflow — and took every job that needs it,
3043
+ // including the release, down with it.
3044
+ ...(job.allow_failure ? { "continue-on-error": true } : {}),
3039
3045
  env,
3040
3046
  steps: [
3041
3047
  ...(skipCheckout
@@ -6291,7 +6297,9 @@ const createNodeTestJobs = async (context) => {
6291
6297
  ...constants_1.NODE_RUNNER_BUILD_VARIABLES,
6292
6298
  ...((_w = (_v = buildConfig.test) === null || _v === void 0 ? void 0 : _v.runnerVariables) !== null && _w !== void 0 ? _w : {}),
6293
6299
  },
6294
- image: (_y = (_x = buildConfig.test) === null || _x === void 0 ? void 0 : _x.jobImage) !== null && _y !== void 0 ? _y : (0, runner_1.getRunnerImage)("jobs-testing-chrome"),
6300
+ // browser tests need a jobImage carrying the browser, e.g. the
6301
+ // official playwright image (version-matched to the project)
6302
+ image: (_y = (_x = buildConfig.test) === null || _x === void 0 ? void 0 : _x.jobImage) !== null && _y !== void 0 ? _y : (0, runner_1.getRunnerImage)("jobs-default"),
6295
6303
  caches: nodeCache,
6296
6304
  script: [
6297
6305
  ...(0, packageManagerInstall_1.ensureNodeVersion)(context),
@@ -7825,7 +7833,6 @@ const path_1 = __nccwpck_require__(16928);
7825
7833
  */
7826
7834
  exports.RUNNER_IMAGE_DEPENDENCIES = {
7827
7835
  "jobs-meteor": ["jobs-default"],
7828
- "jobs-testing-chrome": ["jobs-default"],
7829
7836
  };
7830
7837
  /**
7831
7838
  * the docker build context of each image, mirroring the central image
@@ -7836,7 +7843,6 @@ exports.RUNNER_IMAGE_DEPENDENCIES = {
7836
7843
  exports.RUNNER_IMAGE_BUILD_CONTEXT = {
7837
7844
  "jobs-default": "root",
7838
7845
  "jobs-meteor": "root",
7839
- "jobs-testing-chrome": "root",
7840
7846
  kubernetes: "self",
7841
7847
  "docker-build": "self",
7842
7848
  "semantic-release": "self",
@@ -12433,7 +12439,9 @@ const createVerifyJobs = async (context) => {
12433
12439
  strict: true,
12434
12440
  })),
12435
12441
  ],
12436
- image: (_f = verifyConfig.jobImage) !== null && _f !== void 0 ? _f : (0, runner_1.getRunnerImage)("jobs-testing-chrome"),
12442
+ // browser tests need a jobImage carrying the browser, e.g. the
12443
+ // official playwright image (version-matched to the project)
12444
+ image: (_f = verifyConfig.jobImage) !== null && _f !== void 0 ? _f : (0, runner_1.getRunnerImage)("jobs-default"),
12437
12445
  // neutral cache declarations — each backend lowers them itself
12438
12446
  // (gitlab strips the github-only hint keys, github builds cache
12439
12447
  // restore steps). Pre-lowering via createJobCacheFromCacheConfigs
File without changes
File without changes
File without changes
@@ -9064,6 +9064,12 @@ const makeGithubJob = (context, job, allJobs, uploadProviderIds, images, scripts
9064
9064
  ...(Object.keys(services).length > 0 ? { services } : {}),
9065
9065
  ...(githubEnvironment ? { environment: githubEnvironment } : {}),
9066
9066
  ...(permissions ? { permissions } : {}),
9067
+ // gitlab's allow_failure has a direct github counterpart. Without
9068
+ // this the flag was silently dropped: a `pages` deploy (allowFailure
9069
+ // by default, so a broken site publish cannot block the pipeline)
9070
+ // failed the whole workflow — and took every job that needs it,
9071
+ // including the release, down with it.
9072
+ ...(job.allow_failure ? { "continue-on-error": true } : {}),
9067
9073
  env,
9068
9074
  steps: [
9069
9075
  ...(skipCheckout
@@ -12319,7 +12325,9 @@ const createNodeTestJobs = async (context) => {
12319
12325
  ...constants_1.NODE_RUNNER_BUILD_VARIABLES,
12320
12326
  ...((_w = (_v = buildConfig.test) === null || _v === void 0 ? void 0 : _v.runnerVariables) !== null && _w !== void 0 ? _w : {}),
12321
12327
  },
12322
- image: (_y = (_x = buildConfig.test) === null || _x === void 0 ? void 0 : _x.jobImage) !== null && _y !== void 0 ? _y : (0, runner_1.getRunnerImage)("jobs-testing-chrome"),
12328
+ // browser tests need a jobImage carrying the browser, e.g. the
12329
+ // official playwright image (version-matched to the project)
12330
+ image: (_y = (_x = buildConfig.test) === null || _x === void 0 ? void 0 : _x.jobImage) !== null && _y !== void 0 ? _y : (0, runner_1.getRunnerImage)("jobs-default"),
12323
12331
  caches: nodeCache,
12324
12332
  script: [
12325
12333
  ...(0, packageManagerInstall_1.ensureNodeVersion)(context),
@@ -13853,7 +13861,6 @@ const path_1 = __nccwpck_require__(16928);
13853
13861
  */
13854
13862
  exports.RUNNER_IMAGE_DEPENDENCIES = {
13855
13863
  "jobs-meteor": ["jobs-default"],
13856
- "jobs-testing-chrome": ["jobs-default"],
13857
13864
  };
13858
13865
  /**
13859
13866
  * the docker build context of each image, mirroring the central image
@@ -13864,7 +13871,6 @@ exports.RUNNER_IMAGE_DEPENDENCIES = {
13864
13871
  exports.RUNNER_IMAGE_BUILD_CONTEXT = {
13865
13872
  "jobs-default": "root",
13866
13873
  "jobs-meteor": "root",
13867
- "jobs-testing-chrome": "root",
13868
13874
  kubernetes: "self",
13869
13875
  "docker-build": "self",
13870
13876
  "semantic-release": "self",
@@ -18461,7 +18467,9 @@ const createVerifyJobs = async (context) => {
18461
18467
  strict: true,
18462
18468
  })),
18463
18469
  ],
18464
- image: (_f = verifyConfig.jobImage) !== null && _f !== void 0 ? _f : (0, runner_1.getRunnerImage)("jobs-testing-chrome"),
18470
+ // browser tests need a jobImage carrying the browser, e.g. the
18471
+ // official playwright image (version-matched to the project)
18472
+ image: (_f = verifyConfig.jobImage) !== null && _f !== void 0 ? _f : (0, runner_1.getRunnerImage)("jobs-default"),
18465
18473
  // neutral cache declarations — each backend lowers them itself
18466
18474
  // (gitlab strips the github-only hint keys, github builds cache
18467
18475
  // restore steps). Pre-lowering via createJobCacheFromCacheConfigs
@@ -330169,7 +330177,7 @@ if (lodash_default_symIterator) {
330169
330177
  /***/ ((module) => {
330170
330178
 
330171
330179
  "use strict";
330172
- module.exports = /*#__PURE__*/JSON.parse('[{"description":"No API keys or secrets are stored in repository","responsibles":1,"more":""},{"description":"The app does not provide password login","responsibles":1,"more":""},{"description":"Passwords are not stored","responsibles":1,"more":""},{"description":"No sensitive information (passwords, keys, user data, ...) is logged or traced","responsibles":1,"more":"[Logging guide](https://www.notion.so/panterch/Long-story-logging-022722bb878f4724ae5b49e17667b630?pvs=4#9e5a36b7158a4953b73ec6a345bd8989), [Tracing guide](https://www.notion.so/panterch/Long-story-tracing-d8a9ec1ac2ff4fa78cefa8991233224e?pvs=4#535121b5bf9741fbaf8654b4b64d879d)"},{"description":"Passwords are stored hashed with salt and salt is not stored in the repository","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/hash.md)"},{"description":"Input that ends up in DOM is properly sanitized","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/xss.md)"},{"description":"All user inputs have reasonable validations","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/validation.md)"},{"description":"The app is not using cookies","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"},{"description":"The app is using cookies and cookies are properly configured","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"},{"description":"The app uses JWT with a secret and the secret is not stored in the repository","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cookies.md)"},{"description":"Authorization and user roles (RBAC) were reviewed thoroughly","responsibles":2,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/authorization.md)"},{"description":"CORS headers do not use `*`","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/cors.md)"},{"description":"CSP headers are properly configured (no `unsafe-inline` or `unsafe-eval`)","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/csp.md)"},{"description":"DoS defense mechanism is implemented","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/dos.md)"},{"description":"YAML/XML parsing is not used or used YAML/XML parsers have disabled DTD","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/dos.md)"},{"description":"The app implements CSRF prevention","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/csrf.md)"},{"description":"The app has a rate limitter","responsibles":1,"more":""},{"description":"The app has disabled GraphQL introspection and schema registry","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/graphql.md)"},{"description":"The app has set GraphQL complexity query limits","responsibles":1,"more":"[guide](https://git.panter.ch/panter/security-guide/-/blob/main/docs/audit/graphql.md)"},{"description":"`sitemap.xml` does not leak any routes with sensitive data","responsibles":1,"more":""},{"description":"Cloud storage is (private) configured to not leak any sensitive data publicly","responsibles":1,"more":""},{"description":"Security Dashboard checks weekly vulnerable dependencies https://dep.panter.swiss/","responsibles":1,"more":""},{"description":"The app has `.well-known/security.txt` https://securitytxt.org/","responsibles":1,"more":""}]');
330180
+ module.exports = /*#__PURE__*/JSON.parse('[{"description":"No API keys or secrets are stored in repository","responsibles":1,"more":""},{"description":"The app does not provide password login","responsibles":1,"more":""},{"description":"Passwords are not stored","responsibles":1,"more":""},{"description":"No sensitive information (passwords, keys, user data, ...) is logged or traced","responsibles":1,"more":""},{"description":"Passwords are stored hashed with salt and salt is not stored in the repository","responsibles":1,"more":""},{"description":"Input that ends up in DOM is properly sanitized","responsibles":1,"more":""},{"description":"All user inputs have reasonable validations","responsibles":1,"more":""},{"description":"The app is not using cookies","responsibles":1,"more":""},{"description":"The app is using cookies and cookies are properly configured","responsibles":1,"more":""},{"description":"The app uses JWT with a secret and the secret is not stored in the repository","responsibles":1,"more":""},{"description":"Authorization and user roles (RBAC) were reviewed thoroughly","responsibles":2,"more":""},{"description":"CORS headers do not use `*`","responsibles":1,"more":""},{"description":"CSP headers are properly configured (no `unsafe-inline` or `unsafe-eval`)","responsibles":1,"more":""},{"description":"DoS defense mechanism is implemented","responsibles":1,"more":""},{"description":"YAML/XML parsing is not used or used YAML/XML parsers have disabled DTD","responsibles":1,"more":""},{"description":"The app implements CSRF prevention","responsibles":1,"more":""},{"description":"The app has a rate limitter","responsibles":1,"more":""},{"description":"The app has disabled GraphQL introspection and schema registry","responsibles":1,"more":""},{"description":"The app has set GraphQL complexity query limits","responsibles":1,"more":""},{"description":"`sitemap.xml` does not leak any routes with sensitive data","responsibles":1,"more":""},{"description":"Cloud storage is (private) configured to not leak any sensitive data publicly","responsibles":1,"more":""},{"description":"Security Dashboard checks weekly vulnerable dependencies https://dep.panter.swiss/","responsibles":1,"more":""},{"description":"The app has `.well-known/security.txt` https://securitytxt.org/","responsibles":1,"more":""}]');
330173
330181
 
330174
330182
  /***/ }),
330175
330183
 
File without changes
File without changes
@@ -1,6 +1,6 @@
1
1
 
2
2
 
3
- FROM node:18
3
+ FROM node:22
4
4
 
5
5
  RUN rm /bin/sh && \
6
6
  ln -s /bin/bash /bin/sh && \
@@ -13,14 +13,13 @@ RUN yarn config set network-timeout 600000 -g
13
13
  # in the project's packageManager field)
14
14
  RUN npm install -g pnpm
15
15
 
16
- # install nvm && some common node versions
16
+ # nvm + the current LTS line-up pre-installed. Pre-installed versions
17
+ # are only a cache: jobs with an .nvmrc switch via nvm (installing at
18
+ # job runtime when the version is not pre-installed), jobs without one
19
+ # run on the base image's node.
17
20
  RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash && \
18
21
  source /root/.nvm/nvm.sh && \
19
22
  chmod +x /root/.nvm/nvm.sh && \
20
- /root/.nvm/nvm.sh install 12 && \
21
- /root/.nvm/nvm.sh install 14 && \
22
- /root/.nvm/nvm.sh install 16 && \
23
- /root/.nvm/nvm.sh install 18 && \
24
23
  /root/.nvm/nvm.sh install 20 && \
25
24
  /root/.nvm/nvm.sh install 22 && \
26
25
  /root/.nvm/nvm.sh install 24
@@ -1,6 +1,6 @@
1
1
  # The panter chart
2
2
 
3
- **Main chart used in https://git.panter.ch/catladder/gitlab-ci/ **
3
+ **The default chart catladder deploys kubernetes components with.**
4
4
 
5
5
  Developing helm charts can be complex and they tend to be very verbose.
6
6
  Our goal is therefore to provide a common chart that provides all functionalities that you might need
@@ -21,4 +21,4 @@ This way we avoid having complexity in the projects and make it easier to share
21
21
  - support for namespace secrets and custom env-vars (using catladder-shell and gitlab-ci)
22
22
  - optional prisam1 (_deprecated, prisma2 does not need a separate instance anymore_)
23
23
 
24
- See https://git.panter.ch/catladder/catladder/ for usage information
24
+ See https://github.com/panter/catladder for usage information
@@ -103,7 +103,7 @@ first.
103
103
  a dev needs `customJobs` or a transform hook, it almost always means
104
104
  catladder is missing a capability that other projects will need too.
105
105
  **Open an issue at
106
- https://git.panter.ch/catladder/catladder/-/issues** describing the use
106
+ https://github.com/panter/catladder/issues** describing the use
107
107
  case (what you're trying to achieve and why the existing config can't
108
108
  express it) so it can be generalized into a supported feature — and,
109
109
  where possible, offer to help the dev write that issue. The goal is for
@@ -352,6 +352,12 @@ const makeGithubJob = (context, job, allJobs, uploadProviderIds, images, scripts
352
352
  ...(Object.keys(services).length > 0 ? { services } : {}),
353
353
  ...(githubEnvironment ? { environment: githubEnvironment } : {}),
354
354
  ...(permissions ? { permissions } : {}),
355
+ // gitlab's allow_failure has a direct github counterpart. Without
356
+ // this the flag was silently dropped: a `pages` deploy (allowFailure
357
+ // by default, so a broken site publish cannot block the pipeline)
358
+ // failed the whole workflow — and took every job that needs it,
359
+ // including the release, down with it.
360
+ ...(job.allow_failure ? { "continue-on-error": true } : {}),
355
361
  env,
356
362
  steps: [
357
363
  ...(skipCheckout
@@ -1 +1 @@
1
- {"version":3,"file":"createGithubJobs.js","sourceRoot":"","sources":["../../../../../../../../packages/pipeline/src/backends/github/createGithubJobs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createGithubJobs.js","sourceRoot":"","sources":["../../../../../../../../packages/pipeline/src/backends/github/createGithubJobs.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AACrC,wEAAqE;AACrE,qEAAkF;AAClF,mFAAyE;AASzE,uCAAkD;AAClD,+CAAyD;AACzD,uDAAuE;AAGvE,+CAA6D;AAE7D;;;;GAIG;AACH,MAAM,4BAA4B,GAAG,IAAI,GAAG,CAAC;IAC3C,aAAa;IACb,oBAAoB;IACpB,eAAe;IACf,wBAAwB;IACxB,2BAA2B;IAC3B,sBAAsB;IACtB,yBAAyB;IACzB,cAAc;CACf,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,aAAa,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAE3E,MAAM,IAAI,GAAG,CAAC,KAAa,EAAE,EAAE;IAC7B,MAAM,OAAO,GAAG,KAAK;SAClB,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAC3B,wCAAwC;IACxC,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,OAAO,EAAE,CAAC;AAC9D,CAAC,CAAC;AAEK,MAAM,WAAW,GAAG,CAAC,OAAgB,EAAE,OAAe,EAAE,EAAE,CAC/D,IAAI,CACF,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,IAAI,OAAO,CAAC,GAAG,EAAE,CACxF,CAAC;AAHS,QAAA,WAAW,eAGpB;AAEJ,0EAA0E;AACnE,MAAM,iBAAiB,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAAvD,QAAA,iBAAiB,qBAAsC;AAEpE,MAAM,aAAa,GAAG,CAAC,OAAgB,EAAE,OAAe,EAAE,EAAE,CAC1D,GAAG,OAAO,CAAC,IAAI,IAAI,OAAO,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC;AAIhD,MAAM,WAAW,GAAG,CAClB,OAAgB,EAChB,IAAsB,EACtB,OAAyB,EACX,EAAE;;IAChB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAExB,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,OAAe,EAAE,EAAE;QAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,CACjE,CAAC;QACF,MAAM,GAAG,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,4BAA4B,OAAO,WAAW,GAAG,IAAI,aAAa,GAAG,CACtE,CAAC;QACJ,CAAC;QACD,OAAO,IAAA,mBAAW,EAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,OAAe,EAAE,EAAE;QAClE,MAAM,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,KAAK,GAAG,CACjE,CAAC;QACF,MAAM,GAAG,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;QAC3D,IAAI,CAAC,QAAQ,IAAI,CAAC,GAAG,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,4BAA4B,OAAO,qBAAqB,GAAG,IAAI,aAAa,GAAG,CAChF,CAAC;QACJ,CAAC;QACD,OAAO,IAAA,mBAAW,EAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAChD,CAAC,CAAC;IAEF,IAAI,IAAA,oBAAQ,EAAC,IAAI,CAAC,EAAE,CAAC;QACnB,IAAI,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YACpC,OAAO,EAAE,EAAE,EAAE,IAAA,yBAAiB,EAAC,IAAI,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,eAAe,IAAI,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAClD,OAAO;gBACL,EAAE,EAAE,gBAAgB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC;gBAClD,SAAS,EAAE,IAAI,CAAC,SAAS;aAC1B,CAAC;QACJ,CAAC;QACD,OAAO;YACL,EAAE,EAAE,gBAAgB,CAClB,MAAA,CAAC,eAAe,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,mCACxD,OAAO,CAAC,IAAI,EACd,IAAI,CAAC,GAAG,CACT;YACD,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IACD,OAAO;QACL,EAAE,EACA,OAAO,CAAC,IAAI,KAAK,WAAW;YAC1B,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;YACtC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC;QAC1C,sEAAsE;QACtE,SAAS,EAAE,IAAI;KAChB,CAAC;AACJ,CAAC,CAAC;AAEK,MAAM,kBAAkB,GAAG,CAChC,OAAgB,EAChB,GAAiB,EACjB,OAAyB,EACzB,aAAiC,EAAE,EACnB,EAAE;;IAClB,MAAM,QAAQ,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,CAAC,MAAA,GAAG,CAAC,KAAK,mCAAI,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAClE,WAAW,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CACpC,CAAC;IACF,oEAAoE;IACpE,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACzE,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CACzB,CAAC;AACJ,CAAC,CAAC;AAbW,QAAA,kBAAkB,sBAa7B;AAEF,oEAAoE;AACpE,MAAM,WAAW,GAAG,CAAC,OAAe,EAAE,EAAE,CACtC,SAAS,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,EAAE,CAAC;AAErD,MAAM,gBAAgB,GAAG,CACvB,OAAgB,EAChB,GAAiB,EACH,EAAE;;IAChB,IAAI,CAAC,CAAA,MAAA,GAAG,CAAC,MAAM,0CAAE,MAAM,CAAA,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,OAAO,GAAG,IAAA,mBAAW,EACzB,MAAA,IAAA,+CAA8B,EAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,mCAAI,EAAE,CAC1D,CAAC;IAEF,qEAAqE;IACrE,sEAAsE;IACtE,kEAAkE;IAClE,6DAA6D;IAC7D,gEAAgE;IAChE,oEAAoE;IACpE,yBAAyB;IACzB,MAAM,aAAa,GAAG,IAAI,GAAG,CAC3B,OAAO;SACJ,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC;SAC3C,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACtC,CAAC;IACF,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACzE,CAAC;IACF,MAAM,OAAO,GAAG;QACd,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;QAC1D,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC;KAC1D,CAAC;IAEF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;;QAC3B,MAAM,KAAK,GAAG,IAAA,mBAAW,EAAC,MAAA,KAAK,CAAC,KAAK,mCAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC;QACtB,MAAM,EAAE,QAAQ,EAAE,gBAAgB,EAAE,KAAK,EAAE,GACzC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,SAAS;YAC1C,CAAC,CAAC,CAAA,MAAA,KAAK,CAAC,QAAQ,0CAAE,MAAM;gBACtB,CAAC,CAAC;oBACE,2DAA2D;oBAC3D,uDAAuD;oBACvD,6CAA6C;oBAC7C,QAAQ,EAAE,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,OAAO,mBAAmB,KAAK,CAAC,QAAQ;yBACzD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;yBACpB,IAAI,CAAC,IAAI,CAAC,MAAM;oBACnB,gBAAgB,EAAE,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,OAAO,GAAG;oBACtC,KAAK,EAAE,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,OAAO;iBACtB;gBACH,CAAC,CAAC;oBACE,mEAAmE;oBACnE,QAAQ,EAAE,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,OAAO,wBAAwB;oBACnD,gBAAgB,EAAE,GAAG,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,OAAO,GAAG;oBACtC,KAAK,EAAE,GAAG,aAAH,GAAG,cAAH,GAAG,GAAI,OAAO;iBACtB;YACL,CAAC,CAAC;gBACE,QAAQ,EAAE,GAAG,MAAA,GAAG,CAAC,MAAM,mCAAI,OAAO,mBAAmB,CACnD,MAAA,GAAG,CAAC,KAAK,mCAAI,EAAE,CAChB;qBACE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;qBACpB,IAAI,CAAC,IAAI,CAAC,MAAM;gBACnB,gBAAgB,EAAE,GAAG,MAAA,GAAG,CAAC,MAAM,mCAAI,OAAO,GAAG;gBAC7C,KAAK,EAAE,MAAA,GAAG,CAAC,MAAM,mCAAI,CAAC,MAAA,GAAG,CAAC,KAAK,mCAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;aACjD,CAAC;QACR,mEAAmE;QACnE,mEAAmE;QACnE,MAAM,aAAa,GACjB,KAAK,CAAC,qBAAqB;YAC3B,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC;YAC1C,CAAC,CAAC,cAAc,WAAW,CAAC,KAAK,CAAC,qBAAqB,CAAC,iCAAiC;YACzF,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO;YACL,IAAI,EAAE,SAAS,KAAK,EAAE;YACtB,iEAAiE;YACjE,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC;gBACnD,CAAC,CAAC,EAAE,EAAE,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;gBACpC,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/C,gDAAgD;YAChD,IAAI,EACF,KAAK,CAAC,MAAM,KAAK,MAAM;gBACrB,CAAC,CAAC,0BAA0B;gBAC5B,CAAC,CAAC,kBAAkB;YACxB,IAAI,EAAE;gBACJ,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;gBACtB,GAAG,EAAE,QAAQ;gBACb,cAAc,EAAE,gBAAgB;aACjC;SACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAIF;;;;GAIG;AACH,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,KAAkB,EAAU,EAAE,CACxE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,UAAU;IAC5B,CAAC,CAAC,aAAa,IAAI,KAAK;IACxB,CAAC,CAAC,gBAAgB,IAAI,KAAK,CAAC;AAEhC;;;GAGG;AACI,MAAM,kBAAkB,GAAG,CAAC,OAAyB,EAAe,EAAE;IAC3E,MAAM,KAAK,GAAgB,IAAI,GAAG,EAAE,CAAC;IACrC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE;;QACzC,MAAM,OAAO,GAAG;YACd,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB;YACvC,GAAG,CAAC,MAAA,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,mCAAI,EAAE,CAAC;YACjE,GAAG,CAAC,MAAA,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,gBAAgB,mCAAI,EAAE,CAAC;SACnE,CAAC;QACF,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE,EAAE,CAChC,KAAK,CAAC,GAAG,CACP,IAAA,0CAAgB,EAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,EAChD,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,QAAQ,CACjB,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAhBW,QAAA,kBAAkB,sBAgB7B;AAEF,MAAM,aAAa,GAAG,CACpB,OAAyB,EACzB,KAAkB,EACM,EAAE;;IAC1B,MAAM,IAAI,GAAG;QACX,GAAG,OAAO,CAAC,WAAW,CAAC,gBAAgB;QACvC,GAAG,CAAC,MAAA,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,gBAAgB,mCAAI,EAAE,CAAC;QACjE,GAAG,CAAC,MAAA,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,gBAAgB,mCAAI,EAAE,CAAC;KACnE,CAAC;IACF,OAAO,MAAM,CAAC,WAAW,CACvB,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;QACnB,MAAM,IAAI,GAAG,IAAA,0CAAgB,EAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,EAAE,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;IACnD,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,uBAAuB,GAAG,CAC9B,MAAc,EACd,KAAkB,EACM,EAAE,CAC1B,MAAM,CAAC,WAAW,CAChB,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;KAChD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;KACxB,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,0CAA4B,CAAC,CAAC;KACzD,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,oBAAoB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAC5D,CAAC;AAEG,MAAM,aAAa,GAAG,CAC3B,OAAgB,EAChB,GAAiB,EACjB,OAAyB,EACzB,iBAA8B,EAC9B,MAAqB,EACrB,OAA0B,EAC1B,cAA2B,IAAI,GAAG,EAAE,EACA,EAAE;;IACtC,MAAM,EAAE,GAAG,IAAA,mBAAW,EAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,KAAK,WAAW,CAAC;IAEjD,MAAM,aAAa,GACjB,CAAC,CAAC,GAAG,CAAC,WAAW;QACjB,WAAW;QACX,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,IAAI,GAAG,CAAC,WAAW,CAAC,MAAM,KAAK,OAAO,CAAC,CAAC;IAElE,MAAM,YAAY,GAAG,CAAA,MAAA,GAAG,CAAC,eAAe,0CAAE,YAAY,MAAK,MAAM,CAAC;IAElE,MAAM,QAAQ,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAA,0BAAkB,EAC9B,OAAO,EACP,GAAG,EACH,OAAO,EACP,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CACrC,CAAC;IAEF,MAAM,KAAK,GACT,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ;QAChC,CAAC,CAAC,QAAQ,CAAC,KAAK;QAChB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC;YAC7B,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;YACnB,CAAC,CAAC,MAAA,QAAQ,CAAC,KAAK,0CAAE,IAAI,CAAC;IAE7B,MAAM,SAAS,GAAG;QAChB,GAAG,IAAA,oDAAkC,GAAE;QACvC,GAAG,IAAA,4BAAmB,EACpB,YAAY,EACZ,qBAAqB,CACtB,CAAC,IAAA,yCAAmB,EAAC,MAAA,GAAG,CAAC,SAAS,mCAAI,EAAE,CAAC,CAAC;QAC3C,GAAG,CAAC,MAAA,MAAA,GAAG,CAAC,MAAM,0CAAE,MAAM,CAAC,cAAM,CAAC,mCAAI,EAAE,CAAC;QACrC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,0CAA0C,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACvE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEb,mEAAmE;IACnE,mEAAmE;IACnE,uEAAuE;IACvE,yDAAyD;IACzD,MAAM,GAAG,GACP,YAAY,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;QACvC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IAEjC,MAAM,aAAa,GAAG,MAAA,MAAA,GAAG,CAAC,SAAS,0CAAE,KAAK,mCAAI,EAAE,CAAC;IAEjD,iEAAiE;IACjE,gEAAgE;IAChE,mEAAmE;IACnE,qEAAqE;IACrE,MAAM,eAAe,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjE,MAAM,gBAAgB,GAAG,CAAC,MAAA,GAAG,CAAC,QAAQ,mCAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5D,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAC1D,CAAC;IACF,uEAAuE;IACvE,uEAAuE;IACvE,uEAAuE;IACvE,mEAAmE;IAEnE,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,CACjC,gBAAgB;SACb,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACjD,GAAG,CAAC,CAAC,OAAO,EAA2B,EAAE,CAAC;QACzC,IAAI,CACF,OAAO,IAAI,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CACnE;QACD;YACE,KAAK,EAAE,OAAO,CAAC,IAAI;YACnB,GAAG,CAAC,WAAW,IAAI,OAAO,IAAI,OAAO,CAAC,SAAS;gBAC7C,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,SAAmC,EAAE;gBACtD,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAC,CACL,CAAC;IAEF,MAAM,GAAG,GAAG;QACV,GAAG,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,MAAA,GAAG,CAAC,eAAe,mCAAI,EAAE,CAAC,CAAC,MAAM,CAC9C,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,4BAA4B,CAAC,GAAG,CAAC,GAAG,CAAC,CAClD,CACF;QACD,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC;QAClD,YAAY,EAAE,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,QAAQ;KAChC,CAAC;IAEF;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,MAAM,iBAAiB,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,OAAO,KAAK,KAAK,QAAQ;QACzB,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAClE,CAAC;IACF,MAAM,iBAAiB,GAAG,eAAe;QACvC,CAAC,CAAC,iEAAiE;YACjE,6DAA6D;YAC7D,+DAA+D;YAC/D,gEAAgE;YAChE;gBACE,IAAI,EAAE,cAAc;gBACpB,GAAG,EAAE,0CAA0C;aAChD;QACH,CAAC,CAAC,GAAG,CAAC,WAAW,IAAI,WAAW;YAC9B,CAAC,CAAC;gBACE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,IAAI,EAAE;gBACtC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnE;YACH,CAAC,CAAC,iBAAiB;gBACjB,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE;gBACvB,CAAC,CAAC,SAAS,CAAC;IAElB,mEAAmE;IACnE,uEAAuE;IACvE,qEAAqE;IACrE,oCAAoC;IACpC,MAAM,kBAAkB,GAAG;QACzB,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAChD,CAAC;IACF,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM;QACxD,CAAC,CAAC;YACE,QAAQ,EAAE,MAAM;YAChB,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,kBAAkB;SACtB;QACH,CAAC,CAAC,SAAS,CAAC;IAEd,MAAM,SAAS,GAAc;QAC3B,IAAI,EAAE,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC;QACtC,SAAS,EAAE,eAAe;QAC1B,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,GAAG,CAAC,KAAK;YACP,CAAC,CAAC;gBACE,SAAS,EAAE;oBACT,KAAK;oBACL,yDAAyD;oBACzD,GAAG,CAAC,QAAQ,CAAC,gBAAgB;wBAC3B,CAAC,CAAC;4BACE,WAAW,EAAE;gCACX,QAAQ,EAAE,qBAAqB;gCAC/B,QAAQ,EAAE,qBAAqB;6BAChC;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR;aACF;YACH,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzD,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,kEAAkE;QAClE,qEAAqE;QACrE,kEAAkE;QAClE,gEAAgE;QAChE,uCAAuC;QACvC,GAAG,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG;QACH,KAAK,EAAE;YACL,GAAG,CAAC,YAAY;gBACd,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,qBAAqB,EAAE,CAAC,CAAC;YACxD,GAAG,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC;YACjC,GAAG,KAAK;iBACL,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;iBAC1B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACX,IAAI,EAAE,2BAA2B,CAAC,CAAC,EAAE,EAAE;gBACvC,IAAI,EAAE,8BAA8B;gBACpC,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;aACrB,CAAC,CAAC;YACL;gBACE,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,EAAE,EAAE,MAAM;gBACV,GAAG;gBACH,KAAK,EAAE,MAAM;aACd;YACD,GAAG,CAAC,eAAe;gBACjB,CAAC,CAAC;oBACE;wBACE,IAAI,EAAE,uBAAuB;wBAC7B,IAAI,EAAE,kCAAkC;wBACxC,IAAI,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;qBAChC;oBACD;wBACE,IAAI,EAAE,wBAAwB;wBAC9B,EAAE,EAAE,YAAY;wBAChB,IAAI,EAAE,yBAAyB;qBAChC;iBACF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,eAAe;gBACjB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,iBAAiB,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC;oBACrD,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;wBACxB,CAAC,CAAC;4BACE;gCACE,IAAI,EAAE,kBAAkB;gCACxB,IAAI,EAAE,4BAA4B;gCAClC,IAAI,EAAE;oCACJ,IAAI,EAAE,EAAE;oCACR,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;oCAC9B,mBAAmB,EAAE,MAAM;oCAC3B,uDAAuD;oCACvD,oDAAoD;oCACpD,4CAA4C;oCAC5C,sBAAsB,EAAE,IAAI;iCAC7B;6BACF;yBACF;wBACH,CAAC,CAAC,EAAE;oBACN,CAAC,CAAC,EAAE,CAAC;SACV;KACF,CAAC;IAEF,OAAO,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;AACzB,CAAC,CAAC;AAnPW,QAAA,aAAa,iBAmPxB;AAEF;;;GAGG;AACI,MAAM,oBAAoB,GAAG,CAClC,OAAyB,EACZ,EAAE;IACf,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,CAAC,GAAG,OAAO,CAAC,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,CAC3E,IAAI,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CACnB,IAAA,0BAAkB,EAAC,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC;SACtC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SAC1B,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CACjC,CACF,CAAC;IACF,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAZW,QAAA,oBAAoB,wBAY/B"}
@@ -91,7 +91,9 @@ const createNodeTestJobs = async (context) => {
91
91
  ...constants_1.NODE_RUNNER_BUILD_VARIABLES,
92
92
  ...((_w = (_v = buildConfig.test) === null || _v === void 0 ? void 0 : _v.runnerVariables) !== null && _w !== void 0 ? _w : {}),
93
93
  },
94
- image: (_y = (_x = buildConfig.test) === null || _x === void 0 ? void 0 : _x.jobImage) !== null && _y !== void 0 ? _y : (0, runner_1.getRunnerImage)("jobs-testing-chrome"),
94
+ // browser tests need a jobImage carrying the browser, e.g. the
95
+ // official playwright image (version-matched to the project)
96
+ image: (_y = (_x = buildConfig.test) === null || _x === void 0 ? void 0 : _x.jobImage) !== null && _y !== void 0 ? _y : (0, runner_1.getRunnerImage)("jobs-default"),
95
97
  caches: nodeCache,
96
98
  script: [
97
99
  ...(0, packageManagerInstall_1.ensureNodeVersion)(context),