From 43b3846cca390d88c628b06809873dcec325d06c Mon Sep 17 00:00:00 2001 From: mfrederic Date: Tue, 6 Oct 2026 17:55:11 +0200 Subject: [PATCH 1/6] fix(NOJIRA-123): force single @octokit/rest version to fix jarvis crash deploy_preview installs @typeform/jarvis (needs @octokit/rest@22) on top of a lockfile that also has @octokit/rest@16 via lerna. Yarn 1 nests rest@16's sub-dependencies under rest@22, so endpoint@6 resolves is-plain-object@2 and crashes with "isPlainObject.isPlainObject is not a function". Resolve @octokit/rest to ^22.0.1 so only one version is installed. Co-Authored-By: Claude Sonnet 5.5 --- package.json | 3 +- yarn.lock | 271 ++++++++++++++++----------------------------------- 2 files changed, 88 insertions(+), 186 deletions(-) diff --git a/package.json b/package.json index d267b6ba..9439aff1 100644 --- a/package.json +++ b/package.json @@ -76,6 +76,7 @@ }, "prettier": "@typeform/eslint-config/prettier", "resolutions": { - "@types/minimatch": "5.1.2" + "@types/minimatch": "5.1.2", + "@octokit/rest": "^22.0.1" } } diff --git a/yarn.lock b/yarn.lock index 2aa32f3d..ad9e9e20 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2913,13 +2913,6 @@ proc-log "^6.0.0" which "^6.0.0" -"@octokit/auth-token@^2.4.0": - version "2.5.0" - resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" - integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== - dependencies: - "@octokit/types" "^6.0.3" - "@octokit/auth-token@^6.0.0": version "6.0.0" resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-6.0.0.tgz#b02e9c08a2d8937df09a2a981f226ad219174c53" @@ -2938,6 +2931,19 @@ before-after-hook "^4.0.0" universal-user-agent "^7.0.0" +"@octokit/core@^7.0.6": + version "7.0.8" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-7.0.8.tgz#bc8c05bc3a0200d1f453d4fe59c9053a7446c9f3" + integrity sha512-L7y8eYc+AwxGr2PWI4WFt1VG4TiJ66c26BD16mXpYIlXxG0SMigM1+m4aTSlYyBr5BlQsGAlz8uDCoZN4SEMcg== + dependencies: + "@octokit/auth-token" "^6.0.0" + "@octokit/graphql" "^9.0.5" + "@octokit/request" "^10.0.16" + "@octokit/request-error" "^7.1.2" + "@octokit/types" "^18.0.0" + before-after-hook "^4.0.0" + universal-user-agent "^7.0.0" + "@octokit/endpoint@^11.0.2": version "11.0.2" resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-11.0.2.tgz#a8d955e053a244938b81d86cd73efd2dcb5ef5af" @@ -2946,14 +2952,13 @@ "@octokit/types" "^16.0.0" universal-user-agent "^7.0.2" -"@octokit/endpoint@^6.0.1": - version "6.0.12" - resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" - integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== +"@octokit/endpoint@^11.0.5": + version "11.0.5" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-11.0.5.tgz#d7ec88843bfeeea692fee97b52e7c2cdc0393db4" + integrity sha512-iXa654H3yFafF/ieHkukfbgWo2rmXD2ceD0ZOtrPhw1bc3FDch1d9N/TNs0FQ1/cIbwb7kspUX8jzIs8nzb9DQ== dependencies: - "@octokit/types" "^6.0.3" - is-plain-object "^5.0.0" - universal-user-agent "^6.0.0" + "@octokit/types" "^18.0.0" + universal-user-agent "^7.0.2" "@octokit/graphql@^9.0.3": version "9.0.3" @@ -2964,28 +2969,30 @@ "@octokit/types" "^16.0.0" universal-user-agent "^7.0.0" -"@octokit/openapi-types@^12.11.0": - version "12.11.0" - resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-12.11.0.tgz#da5638d64f2b919bca89ce6602d059f1b52d3ef0" - integrity sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ== +"@octokit/graphql@^9.0.5": + version "9.0.5" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-9.0.5.tgz#da0bc3584d79f958e5373b5ed1e98425ca5efdc0" + integrity sha512-bt/hm03LeU6Vy7FwTrkkC9p3XGT/lBwClglMqxBSe5/q0E5CdJTXeAqEI0vlw89/LF/G6tryTIH8HirZ3prMVg== + dependencies: + "@octokit/request" "^10.0.16" + "@octokit/types" "^18.0.0" + universal-user-agent "^7.0.0" "@octokit/openapi-types@^27.0.0": version "27.0.0" resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-27.0.0.tgz#374ea53781965fd02a9d36cacb97e152cefff12d" integrity sha512-whrdktVs1h6gtR+09+QsNk2+FO+49j6ga1c55YZudfEG+oKJVvJLQi3zkOm5JjiUXAagWK2tI2kTGKJ2Ys7MGA== +"@octokit/openapi-types@^29.0.1": + version "29.0.1" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-29.0.1.tgz#05895cc8ae328058e7af75b608c4c97f0bc1bc00" + integrity sha512-9qWOMFNxxLokERcms42rU0PTLqQmVs7g5E41TI4mCOxmpFayD1rfC7XxOL55cG9MBZLFlC31BrR37myMKardwg== + "@octokit/plugin-enterprise-rest@^6.0.1": version "6.0.1" resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== -"@octokit/plugin-paginate-rest@^1.1.1": - version "1.1.2" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz#004170acf8c2be535aba26727867d692f7b488fc" - integrity sha512-jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q== - dependencies: - "@octokit/types" "^2.0.1" - "@octokit/plugin-paginate-rest@^14.0.0": version "14.0.0" resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-14.0.0.tgz#44dc9fff2dacb148d4c5c788b573ddc044503026" @@ -2993,18 +3000,17 @@ dependencies: "@octokit/types" "^16.0.0" -"@octokit/plugin-request-log@^1.0.0": - version "1.0.4" - resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" - integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== +"@octokit/plugin-request-log@^6.0.0": + version "6.0.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-6.0.0.tgz#de1c1e557df6c08adb631bf78264fa741e01b317" + integrity sha512-UkOzeEN3W91/eBq9sPZNQ7sUBvYCqYbrrD8gTbBuGtHEuycE4/awMXcYvx6sVYo7LypPhmQwwpUe4Yyu4QZN5Q== -"@octokit/plugin-rest-endpoint-methods@2.4.0": - version "2.4.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz#3288ecf5481f68c494dd0602fc15407a59faf61e" - integrity sha512-EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ== +"@octokit/plugin-rest-endpoint-methods@^17.0.0": + version "17.0.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-17.0.0.tgz#8c54397d3a4060356a1c8a974191ebf945924105" + integrity sha512-B5yCyIlOJFPqUUeiD0cnBJwWJO8lkJs5d8+ze9QDP6SvfiXSz1BF+91+0MeI1d2yxgOhU/O+CvtiZ9jSkHhFAw== dependencies: - "@octokit/types" "^2.0.1" - deprecation "^2.3.1" + "@octokit/types" "^16.0.0" "@octokit/plugin-retry@^8.0.0": version "8.0.3" @@ -3023,24 +3029,6 @@ "@octokit/types" "^16.0.0" bottleneck "^2.15.3" -"@octokit/request-error@^1.0.2": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-1.2.1.tgz#ede0714c773f32347576c25649dc013ae6b31801" - integrity sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA== - dependencies: - "@octokit/types" "^2.0.0" - deprecation "^2.0.0" - once "^1.4.0" - -"@octokit/request-error@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" - integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== - dependencies: - "@octokit/types" "^6.0.3" - deprecation "^2.0.0" - once "^1.4.0" - "@octokit/request-error@^7.0.2": version "7.1.0" resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-7.1.0.tgz#440fa3cae310466889778f5a222b47a580743638" @@ -3048,6 +3036,25 @@ dependencies: "@octokit/types" "^16.0.0" +"@octokit/request-error@^7.1.2": + version "7.1.2" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-7.1.2.tgz#0477f3ec1034869205f8bd80560f2bc55b659973" + integrity sha512-XZRuT3xZ84D3gYErI1DZvhJ33dCWVV6uzBtWkaBB4TvA/L6eOeTZodxLFVB44bBEEo3vEx7y00UfX1tBLrtLRg== + dependencies: + "@octokit/types" "^18.0.0" + +"@octokit/request@^10.0.16": + version "10.0.16" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-10.0.16.tgz#b548f8f848ffe4ccf5082142fac096fe7b8222b2" + integrity sha512-A0zWGjHzISIb+9ccG8s0dq7LKO5zVpJLRICjgUb+sJxEWqn8RUHB1rD3AE51+PECvXHIxqZ1VVvs4fHTSD9nUQ== + dependencies: + "@octokit/endpoint" "^11.0.5" + "@octokit/request-error" "^7.1.2" + "@octokit/types" "^18.0.0" + content-type "^3.0.0" + json-with-bigint "^3.5.12" + universal-user-agent "^7.0.2" + "@octokit/request@^10.0.6": version "10.0.7" resolved "https://registry.yarnpkg.com/@octokit/request/-/request-10.0.7.tgz#93f619914c523750a85e7888de983e1009eb03f6" @@ -3059,39 +3066,15 @@ fast-content-type-parse "^3.0.0" universal-user-agent "^7.0.2" -"@octokit/request@^5.2.0": - version "5.6.3" - resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.3.tgz#19a022515a5bba965ac06c9d1334514eb50c48b0" - integrity sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A== - dependencies: - "@octokit/endpoint" "^6.0.1" - "@octokit/request-error" "^2.1.0" - "@octokit/types" "^6.16.1" - is-plain-object "^5.0.0" - node-fetch "^2.6.7" - universal-user-agent "^6.0.0" - -"@octokit/rest@^16.28.4": - version "16.43.2" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-16.43.2.tgz#c53426f1e1d1044dee967023e3279c50993dd91b" - integrity sha512-ngDBevLbBTFfrHZeiS7SAMAZ6ssuVmXuya+F/7RaVvlysgGa1JKJkKWY+jV6TCJYcW0OALfJ7nTIGXcBXzycfQ== - dependencies: - "@octokit/auth-token" "^2.4.0" - "@octokit/plugin-paginate-rest" "^1.1.1" - "@octokit/plugin-request-log" "^1.0.0" - "@octokit/plugin-rest-endpoint-methods" "2.4.0" - "@octokit/request" "^5.2.0" - "@octokit/request-error" "^1.0.2" - atob-lite "^2.0.0" - before-after-hook "^2.0.0" - btoa-lite "^1.0.0" - deprecation "^2.0.0" - lodash.get "^4.4.2" - lodash.set "^4.3.2" - lodash.uniq "^4.5.0" - octokit-pagination-methods "^1.1.0" - once "^1.4.0" - universal-user-agent "^4.0.0" +"@octokit/rest@^16.28.4", "@octokit/rest@^22.0.1": + version "22.0.1" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-22.0.1.tgz#4d866c32b76b711d3f736f91992e2b534163b416" + integrity sha512-Jzbhzl3CEexhnivb1iQ0KJ7s5vvjMWcmRtq5aUsKmKDrRW6z3r84ngmiFKFvpZjpiU/9/S6ITPFRpn5s/3uQJw== + dependencies: + "@octokit/core" "^7.0.6" + "@octokit/plugin-paginate-rest" "^14.0.0" + "@octokit/plugin-request-log" "^6.0.0" + "@octokit/plugin-rest-endpoint-methods" "^17.0.0" "@octokit/types@^16.0.0": version "16.0.0" @@ -3100,19 +3083,12 @@ dependencies: "@octokit/openapi-types" "^27.0.0" -"@octokit/types@^2.0.0", "@octokit/types@^2.0.1": - version "2.16.2" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-2.16.2.tgz#4c5f8da3c6fecf3da1811aef678fda03edac35d2" - integrity sha512-O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q== - dependencies: - "@types/node" ">= 8" - -"@octokit/types@^6.0.3", "@octokit/types@^6.16.1": - version "6.41.0" - resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.41.0.tgz#e58ef78d78596d2fb7df9c6259802464b5f84a04" - integrity sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg== +"@octokit/types@^18.0.0": + version "18.0.0" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-18.0.0.tgz#763eeebafb488d8ea8a8322eafb2d9b1885d2844" + integrity sha512-l6bAF43PNxkJp6g+W4PjoUSSkxHomXw2nOum5CTftJz1NlV3vu93NImgOYtLf6CbBUb5j+fiuzW0PPQ5JTSvZA== dependencies: - "@octokit/openapi-types" "^12.11.0" + "@octokit/openapi-types" "^29.0.1" "@parcel/watcher-android-arm64@2.5.1": version "2.5.1" @@ -3655,19 +3631,6 @@ "@tufjs/canonical-json" "2.0.0" minimatch "^9.0.5" -"@typeform/embed-react@4.7.0": - version "4.7.0" - resolved "https://registry.yarnpkg.com/@typeform/embed-react/-/embed-react-4.7.0.tgz#c0b2a54303fb5d3e5abb70af3910f7fdd3497785" - integrity sha512-1fLS8sM44LZ0Oql9LTychL69mjO3hw0555hl2/KzRrbFyruEwrpIckfCNaeRfpP4OOQOgXrrZpL27C+isS90SQ== - dependencies: - "@typeform/embed" "5.5.1" - fast-deep-equal "^3.1.3" - -"@typeform/embed@5.5.1": - version "5.5.1" - resolved "https://registry.yarnpkg.com/@typeform/embed/-/embed-5.5.1.tgz#e0f6ac948dedc3b86b4c33618656b9421082b4d3" - integrity sha512-lFApRl5KsGb02R8bEwsXd+BCziLH8M0KDAZq3SGiEa/Xfc+GKjlntw6+m70TXTiHJKECJbbgpPmT0EbDLWaq6g== - "@typeform/eslint-config@6.0.3": version "6.0.3" resolved "https://registry.yarnpkg.com/@typeform/eslint-config/-/eslint-config-6.0.3.tgz#72984805a186261f6cf1d43d9eee380934310941" @@ -3841,7 +3804,7 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.5.tgz#ec10755e871497bcd83efe927e43ec46e8c0747e" integrity sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag== -"@types/node@*", "@types/node@>= 8": +"@types/node@*": version "25.0.1" resolved "https://registry.yarnpkg.com/@types/node/-/node-25.0.1.tgz#9c41c277a1b16491174497cd075f8de7c27a1ac4" integrity sha512-czWPzKIAXucn9PtsttxmumiQ9N0ok9FrBwgRWrwmVLlp86BrMExzvXRLFYRJ+Ex3g6yqj+KuaxfX1JTgV2lpfg== @@ -5124,11 +5087,6 @@ at-least-node@^1.0.0: resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== -atob-lite@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696" - integrity sha512-LEeSAWeh2Gfa2FtlQE1shxQ8zi5F9GHarrGKz08TMdODD5T4eH6BMsvtnhbWZ+XQn+Gb6om/917ucvRu7l7ukw== - atob@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" @@ -5430,11 +5388,6 @@ bcrypt-pbkdf@^1.0.0: dependencies: tweetnacl "^0.14.3" -before-after-hook@^2.0.0: - version "2.2.3" - resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.3.tgz#c51e809c81a4e354084422b9b26bad88249c517c" - integrity sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ== - before-after-hook@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-4.0.0.tgz#cf1447ab9160df6a40f3621da64d6ffc36050cb9" @@ -5699,11 +5652,6 @@ bser@2.1.1: dependencies: node-int64 "^0.4.0" -btoa-lite@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" - integrity sha512-gvW7InbIyF8AicrqWoptdW08pUxuhq8BEgowNajy9RhiE86fmGAGl+bLKo6oB8QP0CkqHLowfN0oJdKC/J6LbA== - buffer-crc32@~0.2.3: version "0.2.13" resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" @@ -6592,6 +6540,11 @@ content-disposition@~0.5.4: dependencies: safe-buffer "5.2.1" +content-type@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-3.1.1.tgz#7c80289f1a03ae3fc1f8399c388d22ae44d1394f" + integrity sha512-GW4qUsfFo59d0HbUibDlWv5wPz+vAAcaTWbKIuKCf0JkC7wWkSyf8f13IpXn5JkeMlB2P8iTSSIjwXljorg2vA== + content-type@~1.0.4, content-type@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" @@ -7631,11 +7584,6 @@ depd@~1.1.2: resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== -deprecation@^2.0.0, deprecation@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" - integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== - dequal@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be" @@ -11180,11 +11128,6 @@ is-plain-object@^2.0.3, is-plain-object@^2.0.4: dependencies: isobject "^3.0.1" -is-plain-object@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" - integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== - is-potential-custom-element-name@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" @@ -12048,6 +11991,11 @@ json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" integrity sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA== +json-with-bigint@^3.5.12: + version "3.5.12" + resolved "https://registry.yarnpkg.com/json-with-bigint/-/json-with-bigint-3.5.12.tgz#9f6bf722a9847ed72fa9b217b2b66181227c454c" + integrity sha512-uwbF/wSSuOgC7qqlq27Xp5B6a2MHVug3t0idZdTqu0JnlFvgJuH7ju+KAk/J06C7GfhoYy2gnb9wz2INqcne7w== + json5@2.x, json5@^2.1.2, json5@^2.2.3: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" @@ -12514,11 +12462,6 @@ lodash.escaperegexp@^4.1.2: resolved "https://registry.yarnpkg.com/lodash.escaperegexp/-/lodash.escaperegexp-4.1.2.tgz#64762c48618082518ac3df4ccf5d5886dae20347" integrity sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw== -lodash.get@^4.4.2: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - integrity sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ== - lodash.ismatch@^4.4.0: version "4.4.0" resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" @@ -12554,11 +12497,6 @@ lodash.once@^4.1.1: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== -lodash.set@^4.3.2: - version "4.3.2" - resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" - integrity sha512-4hNPN5jlm/N/HLMCO43v8BXKq9Z7QdAGc/VGrRD61w8gN9g/6jF9A4L1pbUgBLCffi0w9VsXfTOij5x8iTyFvg== - lodash.snakecase@4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz#39d714a35357147837aefd64b5dcbb16becd8f8d" @@ -12683,11 +12621,6 @@ lz-string@^1.5.0: resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941" integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ== -macos-release@^2.2.0: - version "2.5.1" - resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-2.5.1.tgz#bccac4a8f7b93163a8d163b8ebf385b3c5f55bf9" - integrity sha512-DXqXhEM7gW59OjZO8NIjBCz9AQ1BEMrfiOAl4AYByHCtVHRF4KoGNO8mqQeM8lRCtQe/UnJ4imO/d2HdkKsd+A== - magic-string@^0.25.0, magic-string@^0.25.7: version "0.25.9" resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.9.tgz#de7f9faf91ef8a1c91d02c2e5314c8277dbcdd1c" @@ -13470,7 +13403,7 @@ node-fetch-npm@^2.0.2: json-parse-better-errors "^1.0.0" safe-buffer "^5.1.1" -node-fetch@^2.5.0, node-fetch@^2.6.7: +node-fetch@^2.5.0: version "2.7.0" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== @@ -14059,11 +13992,6 @@ obuf@^1.0.0, obuf@^1.1.2: resolved "https://registry.yarnpkg.com/obuf/-/obuf-1.1.2.tgz#09bea3343d41859ebd446292d11c9d4db619084e" integrity sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg== -octokit-pagination-methods@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz#cf472edc9d551055f9ef73f6e42b4dbb4c80bea4" - integrity sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ== - on-finished@2.4.1, on-finished@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" @@ -14171,14 +14099,6 @@ os-homedir@^1.0.0: resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ== -os-name@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" - integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg== - dependencies: - macos-release "^2.2.0" - windows-release "^3.1.0" - os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -19145,18 +19065,6 @@ unique-string@^3.0.0: dependencies: crypto-random-string "^4.0.0" -universal-user-agent@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-4.0.1.tgz#fd8d6cb773a679a709e967ef8288a31fcc03e557" - integrity sha512-LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg== - dependencies: - os-name "^3.1.0" - -universal-user-agent@^6.0.0: - version "6.0.1" - resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.1.tgz#15f20f55da3c930c57bddbf1734c6654d5fd35aa" - integrity sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ== - universal-user-agent@^7.0.0, universal-user-agent@^7.0.2: version "7.0.3" resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-7.0.3.tgz#c05870a58125a2dc00431f2df815a77fe69736be" @@ -19849,13 +19757,6 @@ wildcard@^2.0.0: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.1.tgz#5ab10d02487198954836b6349f74fff961e10f67" integrity sha512-CC1bOL87PIWSBhDcTrdeLo6eGT7mCFtrg0uIJtqJUFyK+eJnzl8A1niH56uu7KMa5XFrtiV+AQuHO3n7DsHnLQ== -windows-release@^3.1.0: - version "3.3.3" - resolved "https://registry.yarnpkg.com/windows-release/-/windows-release-3.3.3.tgz#1c10027c7225743eec6b89df160d64c2e0293999" - integrity sha512-OSOGH1QYiW5yVor9TtmXKQvt2vjQqbYS+DqmsZw+r7xDwLXEeT3JGW0ZppFmHx4diyXmxt238KFR3N9jzevBRg== - dependencies: - execa "^1.0.0" - word-wrap@^1.2.5, word-wrap@~1.2.3: version "1.2.5" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.5.tgz#d2c45c6dd4fbce621a66f136cbe328afd0410b34" From 4f6f0e4c0a299fe3c104c55ff31c4bb280b53a12 Mon Sep 17 00:00:00 2001 From: mfrederic Date: Tue, 6 Oct 2026 18:18:03 +0200 Subject: [PATCH 2/6] fix(NOJIRA-123): use role-based selector for opinion scale in auto-close e2e The hosted form now renders the echo-rx OpinionScale, which does not emit data-qa-index (only the legacy Sampler component did), so [data-qa-index="10"] is never found. Select the Radix radio by role and value instead. Co-Authored-By: Claude Sonnet 5.5 --- packages/embed/e2e/spec/functional/auto-close.cy.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/embed/e2e/spec/functional/auto-close.cy.ts b/packages/embed/e2e/spec/functional/auto-close.cy.ts index 5d83841f..952999fb 100644 --- a/packages/embed/e2e/spec/functional/auto-close.cy.ts +++ b/packages/embed/e2e/spec/functional/auto-close.cy.ts @@ -12,7 +12,7 @@ describe('Auto Close', () => { const transitionTime = 1000 const $body = $iframe.contents().find('body') - cy.wrap($body).find('[data-qa-index="10"]').click() + cy.wrap($body).find('button[role="radio"][value="10"]').click() cy.wait(transitionTime) @@ -37,7 +37,7 @@ describe('Auto Close', () => { const transitionTime = 1000 const $body = $iframe.contents().find('body') - cy.wrap($body).find('[data-qa-index="10"]').click() + cy.wrap($body).find('button[role="radio"][value="10"]').click() cy.wait(transitionTime) From fea55abdb4bbd0a945b02b651dd2acc795b6fc09 Mon Sep 17 00:00:00 2001 From: Engineering Intelligence <120172369+tf-seti@users.noreply.github.com> Date: Wed, 7 Oct 2026 09:21:34 +0200 Subject: [PATCH 3/6] ci: use JENKINS_PAT_TOKEN instead of GH_TOKEN (#769) NOJIRA-123 Co-authored-by: Sourcegraph --- .github/dependabot.yml | 4 ++-- .github/workflows/deploy-aws.yml | 2 +- .github/workflows/pull-request.yml | 4 ++-- .github/workflows/release.yml | 6 +++--- .github/workflows/trigger-external-update.yml | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index c6266186..443315ed 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -3,12 +3,12 @@ registries: npm-github: type: npm-registry url: https://npm.pkg.github.com - token: ${{ secrets.GH_TOKEN }} + token: ${{ secrets.JENKINS_PAT_TOKEN }} git-github: type: git url: https://github.com username: x-access-token - password: '${{ secrets.GH_TOKEN }}' + password: '${{ secrets.JENKINS_PAT_TOKEN }}' updates: - package-ecosystem: npm schedule: diff --git a/.github/workflows/deploy-aws.yml b/.github/workflows/deploy-aws.yml index 155fd55c..d9047152 100644 --- a/.github/workflows/deploy-aws.yml +++ b/.github/workflows/deploy-aws.yml @@ -50,7 +50,7 @@ jobs: @typeform:registry=https://npm.pkg.github.com/ EOF env: - GH_TOKEN: ${{ secrets.GH_TOKEN }} + GH_TOKEN: ${{ secrets.JENKINS_PAT_TOKEN }} - run: yarn add -W @typeform/jarvis - run: git checkout HEAD -- package.json # do not save jarvis dependency to package.json because it is private diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml index 910c9121..c56b19fd 100644 --- a/.github/workflows/pull-request.yml +++ b/.github/workflows/pull-request.yml @@ -110,7 +110,7 @@ jobs: - run: rm ./.npmrc - run: npm config set '//npm.pkg.github.com/:_authToken' $GH_TOKEN env: - GH_TOKEN: ${{ secrets.GH_TOKEN }} + GH_TOKEN: ${{ secrets.JENKINS_PAT_TOKEN }} - run: npm config set @typeform:registry https://npm.pkg.github.com/ # install jarvis from github - run: yarn add -W @typeform/jarvis - run: git checkout HEAD -- package.json # do not save jarvis dependency to package.json because it is private (the file is committed by semantic-release to bump version) @@ -128,6 +128,6 @@ jobs: - run: yarn release:preview env: AWS_ASSETS_BUCKET: 'typeform-public-assets/embed' - GH_TOKEN: ${{ secrets.GH_TOKEN }} + GH_TOKEN: ${{ secrets.JENKINS_PAT_TOKEN }} JARVIS_NOTIFY_PREVIEW_TEMPLATE: ${{ secrets.JARVIS_NOTIFY_PREVIEW_TEMPLATE }} PUBLIC_CDN_URL: 'https://embed.typeform.com' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9d8d4daf..58c84cb6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -19,7 +19,7 @@ jobs: # Use custom token from repo secrets to allow semantic release to push commit: # https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/github-actions.md#pushing-packagejson-changes-to-a-master-branch persist-credentials: false - token: ${{ secrets.GH_TOKEN }} + token: ${{ secrets.JENKINS_PAT_TOKEN }} - name: Set up Node.js uses: actions/setup-node@v6 @@ -50,11 +50,11 @@ jobs: //npm.pkg.github.com/:_authToken=${GH_TOKEN} EOF env: - GH_TOKEN: ${{ secrets.GH_TOKEN }} + GH_TOKEN: ${{ secrets.JENKINS_PAT_TOKEN }} - run: yarn release env: - GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + GITHUB_TOKEN: ${{ secrets.JENKINS_PAT_TOKEN }} SEGMENT_WRITE_KEY: ${{ secrets.DEPLOYMENT_SEGMENT_WRITE_KEY }} - uses: 8398a7/action-slack@v3 diff --git a/.github/workflows/trigger-external-update.yml b/.github/workflows/trigger-external-update.yml index 6da93e06..0d8f2b6a 100644 --- a/.github/workflows/trigger-external-update.yml +++ b/.github/workflows/trigger-external-update.yml @@ -12,13 +12,13 @@ jobs: - name: update_embed_demos uses: peter-evans/repository-dispatch@v4 with: - token: ${{ secrets.GH_TOKEN }} + token: ${{ secrets.JENKINS_PAT_TOKEN }} repository: Typeform/embed-demo event-type: update_embed_demos - name: update_embed_docs uses: peter-evans/repository-dispatch@v4 with: - token: ${{ secrets.GH_TOKEN }} + token: ${{ secrets.JENKINS_PAT_TOKEN }} repository: Typeform/developers event-type: update_embed_docs From 49f308892c420a1a8f5ebcaf71edb7d12032dc5d Mon Sep 17 00:00:00 2001 From: mfrederic Date: Wed, 7 Oct 2026 09:42:18 +0200 Subject: [PATCH 4/6] fix(NOJIRA-123): use role-based selector for opinion scale in keyboard and reload e2e The hosted form now renders the echo-rx OpinionScale, which emits neither data-value-number nor data-qa-index. Select the Radix radio by role and value instead, as done for auto-close. Co-Authored-By: Claude Sonnet 5.5 --- packages/embed/e2e/spec/functional/close-on-keyboard.cy.ts | 2 +- packages/embed/e2e/spec/functional/reload.cy.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/embed/e2e/spec/functional/close-on-keyboard.cy.ts b/packages/embed/e2e/spec/functional/close-on-keyboard.cy.ts index fa9ae6f4..8723723f 100644 --- a/packages/embed/e2e/spec/functional/close-on-keyboard.cy.ts +++ b/packages/embed/e2e/spec/functional/close-on-keyboard.cy.ts @@ -9,7 +9,7 @@ describe('Close on Keyboard Esc Event', () => { cy.get('iframe').then(($iframe) => { const $body = $iframe.contents().find('body') // interact with Iframe - cy.wrap($body).find('[data-value-number="2"]').click() + cy.wrap($body).find('button[role="radio"][value="2"]').click() // close with keyboard inside iframe cy.wrap($body).find('textarea').type('{esc}') }) diff --git a/packages/embed/e2e/spec/functional/reload.cy.ts b/packages/embed/e2e/spec/functional/reload.cy.ts index 861ebb42..46c1057e 100644 --- a/packages/embed/e2e/spec/functional/reload.cy.ts +++ b/packages/embed/e2e/spec/functional/reload.cy.ts @@ -42,7 +42,7 @@ describe('Reload and reload methods', () => { cy.wait(transitionTime) cy.wrap($body).contains('How likely are you to recommend us') - cy.wrap($body).find('[data-qa-index="10"]').click() + cy.wrap($body).find('button[role="radio"][value="10"]').click() cy.wait(transitionTime) From 46f8465192798fe11c05f205a257a2e4f9084998 Mon Sep 17 00:00:00 2001 From: mfrederic Date: Wed, 7 Oct 2026 14:37:04 +0200 Subject: [PATCH 5/6] fix(NOJIRA-123): retry welcome button click in mobile widget e2e The form's ok-button exists before its handlers are attached, so a single click could be lost and the fullscreen close button never appeared. Retry the forced click until the close button is visible. Co-Authored-By: Claude Sonnet 5.5 --- packages/embed/e2e/cypress-utils.ts | 16 ++++++++++++++++ .../embed/e2e/spec/functional/widget-newui.cy.ts | 9 +++------ packages/embed/e2e/spec/functional/widget.cy.ts | 9 +++------ 3 files changed, 22 insertions(+), 12 deletions(-) diff --git a/packages/embed/e2e/cypress-utils.ts b/packages/embed/e2e/cypress-utils.ts index 2145d686..fd6b32c3 100644 --- a/packages/embed/e2e/cypress-utils.ts +++ b/packages/embed/e2e/cypress-utils.ts @@ -31,3 +31,19 @@ export const openOnMobile = (url: string) => { }, }) } + +// Clicks the form's welcome screen button until the widget goes fullscreen (close button visible). +// The button exists before the form's handlers are attached, so a single click can be lost; and it +// can be scrolled out of the iframe viewport, hence `force`. +export const startWidgetOnMobile = (attempts = 5) => { + cy.get('iframe').then(($iframe) => { + const $body = $iframe.contents().find('body') + cy.wrap($body).find('[data-qa="ok-button"]').click({ force: true }) + }) + cy.wait(1000) + cy.get('.tf-v1-widget-close').then(($close) => { + if (!$close.is(':visible') && attempts > 1) { + startWidgetOnMobile(attempts - 1) + } + }) +} diff --git a/packages/embed/e2e/spec/functional/widget-newui.cy.ts b/packages/embed/e2e/spec/functional/widget-newui.cy.ts index 9b6e25ed..2894f54b 100644 --- a/packages/embed/e2e/spec/functional/widget-newui.cy.ts +++ b/packages/embed/e2e/spec/functional/widget-newui.cy.ts @@ -1,4 +1,4 @@ -import { openOnMobile } from '../../cypress-utils' +import { openOnMobile, startWidgetOnMobile } from '../../cypress-utils' describe('Widget', () => { testWidget('/widget-newui-html.html', 'html') @@ -53,11 +53,8 @@ function testMobile(path: string, title: string) { }) it('should reset the form when closing it', () => { - cy.get('iframe').then(($iframe) => { - const $body = $iframe.contents().find('body') - cy.wrap($body).find('[data-qa="ok-button"]').click({ force: true }) - cy.get('.tf-v1-widget-close').click() - }) + startWidgetOnMobile() + cy.get('.tf-v1-widget-close').should('be.visible').click() cy.wait(1000) cy.get('iframe').then(($iframe) => { const $body = $iframe.contents().find('body') diff --git a/packages/embed/e2e/spec/functional/widget.cy.ts b/packages/embed/e2e/spec/functional/widget.cy.ts index 30b53a72..31cb9656 100644 --- a/packages/embed/e2e/spec/functional/widget.cy.ts +++ b/packages/embed/e2e/spec/functional/widget.cy.ts @@ -1,4 +1,4 @@ -import { openOnMobile } from '../../cypress-utils' +import { openOnMobile, startWidgetOnMobile } from '../../cypress-utils' describe('Widget', () => { testWidget('/widget-html.html', 'html') @@ -53,11 +53,8 @@ function testMobile(path: string, title: string) { }) it('should reset the form when closing it', () => { - cy.get('iframe').then(($iframe) => { - const $body = $iframe.contents().find('body') - cy.wrap($body).find('[data-qa="ok-button"]').click() - cy.get('.tf-v1-widget-close').click() - }) + startWidgetOnMobile() + cy.get('.tf-v1-widget-close').should('be.visible').click() cy.wait(1000) cy.get('iframe').then(($iframe) => { const $body = $iframe.contents().find('body') From 6f6fbc16681711b38530adabd89169f720989d0b Mon Sep 17 00:00:00 2001 From: mfrederic Date: Wed, 7 Oct 2026 14:52:39 +0200 Subject: [PATCH 6/6] fix(NOJIRA-123): fix PR size workflow permissions --- .github/workflows/pr-size.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/pr-size.yml b/.github/workflows/pr-size.yml index b4d9de81..af21d4a5 100644 --- a/.github/workflows/pr-size.yml +++ b/.github/workflows/pr-size.yml @@ -2,6 +2,10 @@ name: PR Size on: [pull_request] +permissions: + contents: read + pull-requests: write + jobs: labeler: runs-on: [ubuntu-latest]