Skip to content

Signed URLs for remote orders with query parameters#129

Draft
Copilot wants to merge 3 commits intomainfrom
copilot/use-signed-urls-for-orders
Draft

Signed URLs for remote orders with query parameters#129
Copilot wants to merge 3 commits intomainfrom
copilot/use-signed-urls-for-orders

Conversation

Copy link
Contributor

Copilot AI commented Mar 6, 2026

Third-party apps (e.g. QuizWitz) pass card and name query parameters in remote order URLs to link orders to NFC cards. These parameters were unauthenticated—anyone could craft a URL charging an arbitrary card.

Approach

Split the order token into {public_token}-{secret}. The public part identifies the event in URLs; the secret signs query parameters via HMAC-SHA256. Backward compatible: legacy events without a secret skip signature validation.

Changes

Backend

  • OrderTokenSignatureService — Signs/verifies card and name params using HMAC-SHA256 with RFC 3986 URL-encoded values (prevents card=a&name=b vs card=a%26name%3Db ambiguity)
  • Migration — Adds order_token_secret (varchar 32, nullable) to events, backfills existing rows
  • OrderController@view — Validates signature query param on page load when signable params present
  • PublicEventApiAuthentication — Validates X-Signature header against X-Card-Token / X-Order-Name headers on API calls
  • EventResourceDefinition (both APIs) — Exposes full_order_token field ({token}-{secret}) for admin/integrator consumption

Frontend

  • Client bootstrap sets X-Signature, X-Card-Token, X-Order-Name default headers from server-provided values
  • Order.vue prefers server-validated values over raw query params
  • Events views display full_order_token instead of order_token

Signing algorithm

# 1. Collect signable params, 2. sort by key, 3. URL-encode, 4. HMAC-SHA256
params = {'card': 'player1', 'name': 'Alice'}
message = 'card=player1&name=Alice'  # sorted, rawurlencode'd
signature = hmac_sha256(secret, message).hex()

URL format: /order/{public_token}?card=player1&name=Alice&signature={hex}

Tests & docs

  • 16 unit tests for OrderTokenSignatureService (incl. URL-encoding ambiguity prevention)
  • 13 feature tests for page load + API signature validation flow
  • .ai/signed-order-urls.md — full integration guide with PHP/Python/JS code examples
  • Updated docs/nfc.md with signed URL section

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • https://api.github.com/repos/Bacon/BaconQrCode/zipball/8674e51bb65af933a5ffaf1c308a660387c35c22
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CarbonPHP/carbon-doctrine-types/zipball/99f76ffa36cce3b70a4a6abce41dba15ca2e84cb
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CarbonPHP/carbon/zipball/9228ce90e1035ff2f0db84b40ec2e023ed802075
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CatLabInteractive/base/zipball/6b3da8f0e8431333b60a5039405fd21da0b4d926
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CatLabInteractive/charon-laravel/zipball/63deb7367310dc9b0335e1e620f8205727c77fc5
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CatLabInteractive/charon/zipball/505c7fcc8371ce484eede46e3640142d971970e3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CatLabInteractive/cursor-pagination/zipball/f4ca3f5d895b79dff24d853d83404c3f23b39fe3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CatLabInteractive/laravel-catlab-accounts/zipball/6a1b7b34347db0b50171f20e2485f82fc62f64aa
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CatLabInteractive/omnipay-paynl/zipball/4db536940962191006ac29a07710534667f8dc3f
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/CatLabInteractive/requirements/zipball/40633f8b09b9d5fb22f7900d1724758130531dcd
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/DASPRiD/Enum/zipball/b5874fa9ed0043116c72162ec7f4fb50e02e7cce
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/GrahamCampbell/Result-Type/zipball/e01f4a821471308ba86aa202fed6698b6b695e3b
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/Nyholm/psr7/zipball/a71f2b11690f4b24d099d6b16690a90ae14fc6f3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/Seldaek/monolog/zipball/37308608e599f34a1a4845b16440047ec98a172a
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/SocialiteProviders/Manager/zipball/4e63afbd26dc45ff263591de2a0970436a6a0bf9
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/TheoKouzelis/laravel-airbrake/zipball/283c45f0987d820568f5412e9a094dc47438ed61
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/airbrake/phpbrake/zipball/05a972a5c1ee43367f489357153e757b9d0b1095
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/appstract/laravel-opcache/zipball/d2ce88cddda6af54c14d1f9ceaaf94b54f38f9d3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/brick/math/zipball/0ad82ce168c82ba30d1c01ec86116ab52f589478
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/cash/LRUCache/zipball/4fa4c6834cec59690b43526c4da41d6153026289
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/clue/stream-filter/zipball/049509fef80032cb3f051595029ab75b49a3c2f7
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/defuse/php-encryption/zipball/f53396c2d34225064647a05ca76c1da9d99e5828
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/dflydev/dflydev-dot-access-data/zipball/a23a2bf4f31d3518f3ecb38660c95715dfead60f
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/doctrine/dbal/zipball/63a46cb5aa6f60991186cc98c1d1b50c09311868
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/doctrine/deprecations/zipball/d4fe3e6fd9bb9e72557a19674f44d8ac7db4c6ca
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/doctrine/event-manager/zipball/dda33921b198841ca8dbad2eaa5d4d34769d18cf
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/doctrine/inflector/zipball/6d6c96277ea252fc1304627204c3d5e6e15faa3b
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/doctrine/instantiator/zipball/c6222283fa3f4ac679f8b9ced9a4e23f163e80d0
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/doctrine/lexer/zipball/31ad66abc0fc9e1a1f2d9bc6a42668d2fbbcd6dd
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/dragonmantank/cron-expression/zipball/1b2de7f4a468165dca07b142240733a1973e766d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/egulias/EmailValidator/zipball/d42c8731f0624ad6bdc8d3e5e9a4524f68801cfa
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/endroid/qr-code/zipball/0db25b506a8411a5e1644ebaa67123a6eb7b6a77
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/fideloper/TrustedProxy/zipball/a751f2bc86dd8e6cfef12dc0cbdada82f5a18750
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/filp/whoops/zipball/d2102955e48b9fd9ab24280a7ad12ed552752c4d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/firebase/php-jwt/zipball/d1e91ecf8c598d073d0995afa8cd5c75c6e19e66
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/fruitcake/php-cors/zipball/38aaa6c3fd4c157ffe2a4d10aa8b9b16ba8de379
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/fzaninotto/Faker/zipball/d0190b156bcca848d401fb80f31f504f37141c8d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/guzzle/guzzle/zipball/b51ac707cfa420b7bfd4e4d5e510ba8008e822b4
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/guzzle/promises/zipball/481557b130ef3790cf82b713667b43030dc9c957
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/guzzle/psr7/zipball/21dc724a0583619cd1652f673303492272778051
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/guzzle/uri-template/zipball/4f4bbd4e7172148801e76e3decc1e559bdee34e1
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/hamcrest/hamcrest-php/zipball/f8b1c0173b22fa6ec77a81fe63e5b01eba7e6487
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/laravel/framework/zipball/6055d9594c9da265ddbf1e27e7dd8f09624568bc
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/laravel/passport/zipball/2642f360c51dfde3a6ea60f86ae5d9a8c0caf3cf
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/laravel/serializable-closure/zipball/4f48ade902b94323ca3be7646db16209ec76be3d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/laravel/socialite/zipball/0feb62267e7b8abc68593ca37639ad302728c129
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/laravel/ui/zipball/7d6ffa38d79f19c9b3e70a751a9af845e8f41d88
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/lcobucci/clock/zipball/039ef98c6b57b101d10bd11d8fdfda12cbd996dc
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/lcobucci/jwt/zipball/08071d8d2c7f4b00222cc4b1fb6aa46990a80f83
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/mockery/mockery/zipball/1f4efdd7d3beafe9807b08156dfcb176d18f1699
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/moneyphp/money/zipball/b358727ea5a5cd2d7475e59c31dfc352440ae7ec
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/myclabs/DeepCopy/zipball/07d290f0c47959fd5eed98c95ee5602db07e0b6a
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/nette/schema/zipball/f0ab1a3cda782dbc5da270d28545236aa80c4002
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/nette/utils/zipball/2778deb6aab136c8db4ed1f4d6e9f465ca2dbee3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/nunomaduro/termwind/zipball/5369ef84d8142c1d87e4ec278711d4ece3cbf301
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/paragonie/constant_time_encoding/zipball/d5b01a39b3415c2cd581d3bd3a3575c1ebbd8e77
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/paragonie/random_compat/zipball/996434e5492cb4c3edcb9168db6fbb1359ef965a
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/phar-io/manifest/zipball/54750ef60c58e43759730615a392c31c80e23176
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/phar-io/version/zipball/4f7fd7836c6f332bb2933569e566a0d6c4cbed74
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/cache/zipball/aa5030cfa5405eccfdcb1083ce040c2cb8d253bf
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/clock/zipball/e41a24703d4560fd0acb709162f73b8adfc3aa0d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/container/zipball/c71ecc56dfe541dbd90c5360474fbc405f8d5963
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/event-dispatcher/zipball/dbefd12671e8a14ec7f180cab83036ed26714bb0
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/http-client/zipball/bb5906edc1c324c9a05aa0873d40117941e5fa90
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/http-factory/zipball/2b4765fddfe3b508ac62f829e852b1501d3f6e8a
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/http-message/zipball/402d35bcb92c70c026d1a6a9883f06b2ead23d71
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/log/zipball/f16e1d5863e37f8d8c2a01719f5b34baa2b714d3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-fig/simple-cache/zipball/764e0b3939f5ca87cb904f570ef9be2d78a07865
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-http/discovery/zipball/82fe4c73ef3363caed49ff8dd1539ba06044910d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-http/guzzle7-adapter/zipball/03a415fde709c2f25539790fecf4d9a31bc3d0eb
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-http/httplug/zipball/5cad731844891a4c282f3f3e1b582c46839d22f4
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-http/message/zipball/06dd5e8562f84e641bf929bfe699ee0f5ce8080a
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/php-http/promise/zipball/fc85b1fba37c169a69a07ef0d5a8075770cc1f83
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/phpseclib/phpseclib/zipball/6233a1e12584754e6b5daa69fe1289b47775c1b9
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/ralouphie/getallheaders/zipball/120b605dfeb996808c31b6477290a714d356e822
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/ramsey/collection/zipball/344572933ad0181accbf4ba763e85a0306a8c5e2
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/ramsey/uuid/zipball/8429c78ca35a09f27565311b98101e2826affde0
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/schmittjoh/php-option/zipball/75365b91986c2405cf5e1e012c5595cd487a98be
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/cli-parser/zipball/2b56bea83a09de3ac06bb18b92f068e60cc6f50b
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ac91f01ccec49fb77bdc6fd1e548bc70f7faa3e5
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/comparator/zipball/e4df00b9b3571187db2831ae9aada2c6efbd715d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/complexity/zipball/25f207c40d62b8b7aa32f5ab026c53561964053a
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/diff/zipball/ba01945089c3a293b01ba9badc29ad55b106b0bc
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/environment/zipball/830c43a844f1f8d5b7a1f6d6076b784454d8b7ed
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/exporter/zipball/14c6ba52f95a36c3d27c835d65efc7123c446e8c
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/global-state/zipball/b6781316bdcd28260904e7cc18ec983d0d2ef4f6
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/e1e4a170560925c26d424b6a03aed157e7dcc5c5
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/85402a822d1ecf1db1096959413d35e1c37cf1a5
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/cf1c2e7c203ac650e352f4cc675a7021e7d1b3cf
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/5a10147d0aaf65b58940a0b72f71c9ac0423cc67
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/phpunit/zipball/b36f02317466907a230d3aa1d34467041271ef4a
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/539c6691e0623af6dc6f9c20384c120f963465a0
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/05d5692a7993ecccd56a03e40cd7e5b09b1d404e
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/type/zipball/75e2c2a32f5e0b3aef905b9ed0b179b953b3d7c7
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/sebastianbergmann/version/zipball/c6c1022351a901512170118436c764e473f6de8c
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/console/zipball/0bc2199c6c1f05276b05956f1ddc63f6d7eb5fc3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/css-selector/zipball/9b784413143701aa3c94ac1869a159a9e53e8761
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/deprecation-contracts/zipball/63afe740e99a13ba87ec199bb07bbdee937a5b62
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/error-handler/zipball/8c18400784fcb014dc73c8d5601a9576af7f8ad4
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/event-dispatcher-contracts/zipball/59eb412e93815df44f05f342958efa9f46b1e586
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/event-dispatcher/zipball/99d7e101826e6610606b9433248f80c1997cd20b
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/finder/zipball/24965ca011dac87431729640feef8bcf7b5523e0
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/http-foundation/zipball/f1a490cc9d595ba7ebe684220e625d1e472ad278
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/http-kernel/zipball/73fa5c999d7f741ca544a97d3c791cc97890ae4d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/mailer/zipball/8835f93333474780fda1b987cae37e33c3e026ca
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/mime/zipball/7409686879ca36c09fc970a5fa8ff6e93504dba4
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/380872130d3a5dd3ace2f4010d95125fde5d5c70
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/9614ac4d8061dc257ecc64cba1b140873dce8ad3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/3833d7255cc303546435cb650316bff708a1c75c
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-php83/zipball/17f6f9a6b1735c0f163024d959f700cfbc5155e5
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/polyfill-uuid/zipball/21533be36c24be3f4b1669c4725c7d1d2bab4ae2
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/process/zipball/c46e854e79b52d07666e43924a20cb6dc546644e
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/psr-http-message-bridge/zipball/581ca6067eb62640de5ff08ee1ba6850a0ee472e
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/routing/zipball/0dc6253e864e71b486e8ba4970a56ab849106ebe
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/service-contracts/zipball/45112560a3ba2d715666a509a0bc9521d10b6c43
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/string/zipball/50590a057841fa6bf69d12eceffce3465b9e32cb
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/translation-contracts/zipball/65a8bc82080447fae78373aa10f8d13b38338977
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/translation/zipball/d6cc8e2fdd484f2f41d25938b0e8e3915de3cfbc
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/uid/zipball/6b973c385f00341b246f697d82dc01a09107acdd
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/symfony/var-dumper/zipball/131fc9915e0343052af5ed5040401b481ca192aa
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/commonmark/zipball/4efa10c1e56488e658d10adf7b7b7dcd19940bfb
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/config/zipball/754b3604fb2984c71f4af4a9cbe7b57f346ec1f3
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/event/zipball/062ebb450efbe9a09bc2478e89b7c933875b0935
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/flysystem-local/zipball/2f669db18a4c20c755c2bb7d3a7b0b2340488079
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/flysystem/zipball/1717e0b3642b0df65ecb0cc89cdd99fa840672ff
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/mime-type-detection/zipball/2d6702ff215bf922936ccc1ad31007edc76451b9
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/oauth1-client/zipball/f9c94b088837eb1aae1ad7c4f23eb65cc6993055
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/oauth2-server/zipball/cc8778350f905667e796b3c2364a9d3bd7a73518
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/omnipay-common/zipball/cd58a4e7b359b0c5b9748542d422b5cc0d4a692f
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/uri-interfaces/zipball/c5c5cd056110fc8afaba29fa6b72a43ced42acd4
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/thephpleague/uri/zipball/4436c6ec8d458e4244448b069cc572d088230b76
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/theseer/tokenizer/zipball/b7489ce515e168639d17feec34b8847c326b0b3c
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/tijsverkoyen/CssToInlineStyles/zipball/f0292ccf0ec75843d65027214426b6b163b48b41
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/vlucas/phpdotenv/zipball/955e7815d677a3eaa7075231212f2110983adecc
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • https://api.github.com/repos/voku/portable-ascii/zipball/b1d923f88091c6bf09699efcd7c8a1b1bfd7351d
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/z2SNOG /usr/bin/composer install --ignore-platform-reqs (http block)
    • Triggering command: /usr/bin/php8.3 /usr/bin/php8.3 -n -c /tmp/QEU8Ya /usr/bin/composer install --ignore-platform-reqs --no-interaction --no-progress (http block)
  • scarf.sh
    • Triggering command: /home/REDACTED/work/_temp/ghcca-node/node/bin/node node ./report.js /usr/bin/git git est --no-checkout /https---github.com-sebastianbergmann-code-unit-reverse-lookup.git/ catlab-drinks/vendor/sebastian/code-unit-reverse-lookup --dissociate --reference /https---github.--noprofile git remo�� add composer ndor/bin/git mann/php-code-conode composer /usr/local/sbin/git git (dns block)

If you need me to access, download, or install something from one of these locations, you can either:

Original prompt

This section details on the original issue you should resolve

<issue_title>Use signed urls for remote orders with parameters (like card alias or name)</issue_title>
<issue_description>Some applications (like QuizWitz) add query parameters to the remote order URL's, adding card alias and order name etc to the order. This data should be signed.

  • Split up the order token in a public part that defines the url of the order form + a secret that should not be visible to the end user. Split with dash (-)
  • when additional information like card or name are provided in the url, add a signature using the shared secret. Validate the secret both on load of the form as on the order itself. Verification should obviously happen on the server
  • write documentation for event organisers on how the signature must be calculated
  • add ample tests and documentation in .ai folder and in readme</issue_description>

Comments on the Issue (you are @copilot in this section)


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

Copilot AI and others added 2 commits March 6, 2026 07:28
- Add OrderTokenSignatureService for HMAC-SHA256 signing/verification
- Add order_token_secret column to events table via migration
- Update OrderController to validate signatures on page load
- Update PublicEventApiAuthentication to validate signatures on API calls
- Update client bootstrap to pass signature headers
- Update EventResourceDefinitions to expose full order token
- Update frontend views to display full order token
- Add unit tests for signature service
- Add feature tests for full signed URL flow
- Add documentation in .ai/signed-order-urls.md and docs/nfc.md

Co-authored-by: daedeloth <1168599+daedeloth@users.noreply.github.com>
…re params

- Use @JSON() in Blade template for proper JS escaping of server values
- URL-encode parameter values in signature message to prevent ambiguity attacks
- Add test for URL encoding preventing parameter injection
- Update documentation with URL encoding requirement and code examples

Co-authored-by: daedeloth <1168599+daedeloth@users.noreply.github.com>
Copilot AI changed the title [WIP] Add signed URLs for remote orders with parameters Signed URLs for remote orders with query parameters Mar 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Use signed urls for remote orders with parameters (like card alias or name)

2 participants