From 9547dc8b97d10f8a380e02aeac703cd90ee9b71d Mon Sep 17 00:00:00 2001 From: Jarvis Date: Tue, 26 May 2026 15:05:32 -0500 Subject: [PATCH] fix(git-tools): validate Gitea merge API payload --- .../tools/git/test-pr-merge-gitea-empty-uid.sh | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/packages/mosaic/framework/tools/git/test-pr-merge-gitea-empty-uid.sh b/packages/mosaic/framework/tools/git/test-pr-merge-gitea-empty-uid.sh index ef299d5..7be5cb8 100755 --- a/packages/mosaic/framework/tools/git/test-pr-merge-gitea-empty-uid.sh +++ b/packages/mosaic/framework/tools/git/test-pr-merge-gitea-empty-uid.sh @@ -39,6 +39,7 @@ printf '\n' >> "$PR_MERGE_TEST_LOG" args=" $* " out_file="" write_code=false +post_data="" prev="" for arg in "$@"; do if [[ "$prev" == "-o" ]]; then @@ -46,10 +47,19 @@ for arg in "$@"; do prev="" continue fi + if [[ "$prev" == "-d" ]]; then + post_data="$arg" + prev="" + continue + fi if [[ "$arg" == "-o" ]]; then prev="-o" continue fi + if [[ "$arg" == "-d" ]]; then + prev="-d" + continue + fi if [[ "$arg" == "-w" ]]; then write_code=true fi @@ -70,6 +80,10 @@ if [[ "$args" == *"/api/v1/repos/mosaicstack/stack/pulls/123"* && "$args" != *"/ exit 0 fi if [[ "$args" == *"-X POST"* && "$args" == *"/api/v1/repos/mosaicstack/stack/pulls/123/merge"* ]]; then + if [[ "$post_data" != '{"Do":"squash"}' ]]; then + echo "unexpected merge payload: $post_data" >&2 + exit 96 + fi emit_response '{"merged":true,"message":"mock merge complete"}' exit 0 fi