this derivation will be built: /nix/store/z684svag0ppkr6dsrhkjirdfq45ymn47-argunix-webhook-smoke.drv argunix-webhook-smoke> daemon listening on 127.0.0.1:38095 argunix-webhook-smoke> webhook secret: 31353833663465623565383766633737396636643238663535393934623035373839643062376531633764376562376563616237356534356139386166366537 (hex) argunix-webhook-smoke> --- 1. valid push webhook --- argunix-webhook-smoke> argunix-webhook-smoke> --- 2. wrong-secret webhook is rejected --- argunix-webhook-smoke> HMAC signature mismatch argunix-webhook-smoke> --- 3. unknown repo is rejected --- argunix-webhook-smoke> repo `stranger/elsewhere` is not configured in argunix argunix-webhook-smoke> --- 4. unknown forge URL path --- argunix-webhook-smoke> --- 5. ping event is acknowledged but creates no row --- argunix-webhook-smoke> --- DB shape --- argunix-webhook-smoke> slug|forge argunix-webhook-smoke> myorg/myrepo|github-myorg argunix-webhook-smoke> trigger|git_ref|sha|status argunix-webhook-smoke> push|main|0123456789abcdef0123456789abcdef01234567|evaluation_failed argunix-webhook-smoke> /build/.attr-0l2nkwhif96f51f4amnlf414lhl4rv9vh8iffyp431v6s28gsr90: line 136: 15 Killed argunix serve --config "$workdir/argunix.yaml" --listen "127.0.0.1:0" > daemon.stdout 2> daemon.stderr argunix-webhook-smoke> --- daemon stderr (last 20 lines) --- argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.608337Z","level":"INFO","fields":{"message":"providers initialised","forges":1,"repos":1},"target":"argunix"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.706878Z","level":"INFO","fields":{"message":"webhook ensured","forge":"github-myorg","slug":"myorg/myrepo","target_url":"https://argunix.example.com/webhook/github","hook_id":"1"},"target":"argunix_web::auto_install"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.706898Z","level":"INFO","fields":{"message":"webhook auto-install pass complete","installed":1,"failed":0,"total":1},"target":"argunix_web::auto_install"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.712197Z","level":"INFO","fields":{"message":"argunix http server ready","local":"127.0.0.1:38095"},"target":"argunix"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.712258Z","level":"ERROR","fields":{"message":"control server exited with error","error":"binding /run/argunix/control.sock"},"target":"argunix::control"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.813651Z","level":"INFO","fields":{"message":"evaluation queued","repo_id":1,"eval_id":1,"slug":"myorg/myrepo","sha":"0123456789abcdef0123456789abcdef01234567"},"target":"argunix_web::webhook"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.815317Z","level":"INFO","fields":{"message":"worker picked up evaluation"},"target":"argunix::worker","span":{"eval_id":1,"name":"evaluation"},"spans":[{"eval_id":1,"name":"evaluation"}]} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.819669Z","level":"ERROR","fields":{"message":"evaluation failed in worker","error":"cloning myorg/myrepo at 0123456789abcdef0123456789abcdef01234567: spawning git: No such file or directory (os error 2)"},"target":"argunix::worker","span":{"eval_id":1,"name":"evaluation"},"spans":[{"eval_id":1,"name":"evaluation"}]} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.853771Z","level":"WARN","fields":{"message":"webhook rejected","forge_kind":"github","forge_name":"Some(\"github-myorg\")","slug":"Some(\"myorg/myrepo\")","status":401,"error":"HMAC signature mismatch"},"target":"argunix_web::webhook"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.889782Z","level":"WARN","fields":{"message":"webhook rejected","forge_kind":"github","forge_name":"None","slug":"Some(\"stranger/elsewhere\")","status":404,"error":"repo `stranger/elsewhere` is not configured in argunix"},"target":"argunix_web::webhook"} argunix-webhook-smoke> {"timestamp":"2026-06-12T12:11:10.907104Z","level":"WARN","fields":{"message":"webhook rejected","forge_kind":"gerrit","forge_name":"None","slug":"None","status":404,"error":"unknown forge kind in URL path: `gerrit`"},"target":"argunix_web::webhook"}