this derivation will be built: /nix/store/z9xi4amdv5ibqbh0r7in9larxs32xlaj-argunix-webhook-smoke.drv argunix-webhook-smoke> daemon listening on 127.0.0.1:39419 argunix-webhook-smoke> webhook secret: 32353035666530353963653533353132313864396166333263323633373365393138656265396630653934363431613366376133656563303434316266366531 (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: 13 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-13T15:00:39.881382Z","level":"INFO","fields":{"message":"providers initialised","forges":1,"repos":1},"target":"argunix"} argunix-webhook-smoke> {"timestamp":"2026-06-13T15:00:39.945182Z","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-13T15:00:39.945203Z","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-13T15:00:39.948436Z","level":"ERROR","fields":{"message":"control server exited with error","error":"binding /run/argunix/control.sock"},"target":"argunix::control"} argunix-webhook-smoke> {"timestamp":"2026-06-13T15:00:39.948490Z","level":"INFO","fields":{"message":"argunix http server ready","local":"127.0.0.1:39419"},"target":"argunix"} argunix-webhook-smoke> {"timestamp":"2026-06-13T15:00:40.025442Z","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-13T15:00:40.025526Z","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-13T15:00:40.030431Z","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-13T15:00:40.040177Z","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-13T15:00:40.053747Z","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-13T15:00:40.061780Z","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"}