Browse Source

docs: add debugging notes for agent webhook

pull/2/head
Diego Vester 2 months ago
parent
commit
52d45ac00b
  1. 14
      docs/debugging/01-23-2026/webhook deliveries/claude.txt
  2. 341
      docs/debugging/01-23-2026/webhook deliveries/delivery1.txt
  3. 215
      docs/debugging/01-23-2026/webhook deliveries/delivery2.txt

14
docs/debugging/01-23-2026/webhook deliveries/claude.txt

@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
prompt:
The preview did successfully deploy. The push triggered two deliveries from the webhook. One succeeded and one failed. I have pasted the results into two text files respectively. Why are there two? Why is one failing?12:01 PMGood catch. Two events are firing because:
answer:
Push event (delivery2.txt) - Triggered by any push to any branch. Your webhook returns {"ignored":true} because the code checks for pull_request event type and ignores others. This is correct behavior.
Pull request sync event (delivery1.txt) - Triggered because the branch is associated with an open PR. This is the one that actually builds the preview. It shows "context deadline exceeded" because the build takes longer than Gitea's webhook timeout (~10 seconds), but the build still completes successfully in the background.
The "failure" isn't really a failure - Gitea just gave up waiting for a response, but the server kept running and finished the build. That's why you see "Preview built" in the logs.
To fix the timeout warning, the webhook should respond immediately and run the build asynchronously. But functionally, everything is working correctly:
Push event: ignored (correct)
PR sync event: times out but build completes (acceptable)
The preview at https://preview.corneruniverse.com/toonpets.corneruniverse.com/pr-2/ should show your changes. Does it?

341
docs/debugging/01-23-2026/webhook deliveries/delivery1.txt

@ -0,0 +1,341 @@ @@ -0,0 +1,341 @@
98bf8bf6-3128-40ca-9a0d-ec9a67254c9a
2026-01-23 17:49:37 UTC
Request
Headers
Request URL: https://agent.corneruniverse.com/api/webhook/preview
Request method: POST
Content-Type: application/json
X-GitHub-Delivery: c242810a-ac2d-4e8d-9e6b-87373c0cc33e
X-GitHub-Event: pull_request
X-GitHub-Event-Type: pull_request_sync
X-Gitea-Delivery: c242810a-ac2d-4e8d-9e6b-87373c0cc33e
X-Gitea-Event: pull_request
X-Gitea-Event-Type: pull_request_sync
X-Gitea-Signature:
X-Gogs-Delivery: c242810a-ac2d-4e8d-9e6b-87373c0cc33e
X-Gogs-Event: pull_request
X-Gogs-Event-Type: pull_request_sync
X-Gogs-Signature:
X-Hub-Signature: sha1=
X-Hub-Signature-256: sha256=
Content
{
"action": "synchronized",
"number": 2,
"pull_request": {
"id": 2,
"url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com/pulls/2",
"number": 2,
"user": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
},
"title": "feat: remove logo",
"body": "",
"labels": [],
"milestone": null,
"assignee": null,
"assignees": null,
"state": "open",
"is_locked": false,
"comments": 1,
"html_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com/pulls/2",
"diff_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com/pulls/2.diff",
"patch_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com/pulls/2.patch",
"mergeable": true,
"merged": false,
"merged_at": null,
"merge_commit_sha": null,
"merged_by": null,
"base": {
"label": "main",
"ref": "main",
"sha": "5d19f889dbb6156b3835f990d6b2d4dedb25b444",
"repo_id": 2,
"repo": {
"id": 2,
"owner": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
},
"name": "toonpets.corneruniverse.com",
"full_name": "diegovester/toonpets.corneruniverse.com",
"description": "Website for toonpets",
"empty": false,
"private": false,
"fork": false,
"template": false,
"parent": null,
"mirror": false,
"size": 565,
"html_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com",
"ssh_url": "[email protected]:diegovester/toonpets.corneruniverse.com.git",
"clone_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com.git",
"original_url": "",
"website": "",
"stars_count": 0,
"forks_count": 0,
"watchers_count": 1,
"open_issues_count": 0,
"open_pr_counter": 1,
"release_counter": 0,
"default_branch": "main",
"archived": false,
"created_at": "2026-01-17T17:53:48Z",
"updated_at": "2026-01-23T17:45:10Z",
"permissions": {
"admin": false,
"push": false,
"pull": true
},
"has_issues": true,
"internal_tracker": {
"enable_time_tracker": true,
"allow_only_contributors_to_track_time": true,
"enable_issue_dependencies": true
},
"has_wiki": true,
"has_pull_requests": true,
"has_projects": true,
"ignore_whitespace_conflicts": false,
"allow_merge_commits": true,
"allow_rebase": true,
"allow_rebase_explicit": true,
"allow_squash_merge": true,
"default_merge_style": "merge",
"avatar_url": "",
"internal": false,
"mirror_interval": "",
"mirror_updated": "0001-01-01T00:00:00Z",
"repo_transfer": null
}
},
"head": {
"label": "feat-remove-logo",
"ref": "feat-remove-logo",
"sha": "41e2080b51c39dc9bda1a9dffbbcb9317b4466e0",
"repo_id": 2,
"repo": {
"id": 2,
"owner": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
},
"name": "toonpets.corneruniverse.com",
"full_name": "diegovester/toonpets.corneruniverse.com",
"description": "Website for toonpets",
"empty": false,
"private": false,
"fork": false,
"template": false,
"parent": null,
"mirror": false,
"size": 565,
"html_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com",
"ssh_url": "[email protected]:diegovester/toonpets.corneruniverse.com.git",
"clone_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com.git",
"original_url": "",
"website": "",
"stars_count": 0,
"forks_count": 0,
"watchers_count": 1,
"open_issues_count": 0,
"open_pr_counter": 1,
"release_counter": 0,
"default_branch": "main",
"archived": false,
"created_at": "2026-01-17T17:53:48Z",
"updated_at": "2026-01-23T17:45:10Z",
"permissions": {
"admin": false,
"push": false,
"pull": true
},
"has_issues": true,
"internal_tracker": {
"enable_time_tracker": true,
"allow_only_contributors_to_track_time": true,
"enable_issue_dependencies": true
},
"has_wiki": true,
"has_pull_requests": true,
"has_projects": true,
"ignore_whitespace_conflicts": false,
"allow_merge_commits": true,
"allow_rebase": true,
"allow_rebase_explicit": true,
"allow_squash_merge": true,
"default_merge_style": "merge",
"avatar_url": "",
"internal": false,
"mirror_interval": "",
"mirror_updated": "0001-01-01T00:00:00Z",
"repo_transfer": null
}
},
"merge_base": "5d19f889dbb6156b3835f990d6b2d4dedb25b444",
"due_date": null,
"created_at": "2026-01-23T16:49:19Z",
"updated_at": "2026-01-23T17:45:11Z",
"closed_at": null
},
"repository": {
"id": 2,
"owner": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
},
"name": "toonpets.corneruniverse.com",
"full_name": "diegovester/toonpets.corneruniverse.com",
"description": "Website for toonpets",
"empty": false,
"private": false,
"fork": false,
"template": false,
"parent": null,
"mirror": false,
"size": 565,
"html_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com",
"ssh_url": "[email protected]:diegovester/toonpets.corneruniverse.com.git",
"clone_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com.git",
"original_url": "",
"website": "",
"stars_count": 0,
"forks_count": 0,
"watchers_count": 1,
"open_issues_count": 0,
"open_pr_counter": 1,
"release_counter": 0,
"default_branch": "main",
"archived": false,
"created_at": "2026-01-17T17:53:48Z",
"updated_at": "2026-01-23T17:49:31Z",
"permissions": {
"admin": false,
"push": false,
"pull": false
},
"has_issues": true,
"internal_tracker": {
"enable_time_tracker": true,
"allow_only_contributors_to_track_time": true,
"enable_issue_dependencies": true
},
"has_wiki": true,
"has_pull_requests": true,
"has_projects": true,
"ignore_whitespace_conflicts": false,
"allow_merge_commits": true,
"allow_rebase": true,
"allow_rebase_explicit": true,
"allow_squash_merge": true,
"default_merge_style": "merge",
"avatar_url": "",
"internal": false,
"mirror_interval": "",
"mirror_updated": "0001-01-01T00:00:00Z",
"repo_transfer": null
},
"sender": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
},
"review": null
}
Response 0
Headers
Body
Delivery: Post "https://agent.corneruniverse.com/api/webhook/preview": context deadline exceeded (Client.Timeout exceeded while awaiting headers)

215
docs/debugging/01-23-2026/webhook deliveries/delivery2.txt

@ -0,0 +1,215 @@ @@ -0,0 +1,215 @@
fef3da0e-3271-425e-9cd8-c4f1bd9db8cd
2026-01-23 17:49:32 UTC
Request
Headers
Request URL: https://agent.corneruniverse.com/api/webhook/preview
Request method: POST
Content-Type: application/json
X-GitHub-Delivery: 98bf8bf6-3128-40ca-9a0d-ec9a67254c9a
X-GitHub-Event: push
X-GitHub-Event-Type: push
X-Gitea-Delivery: 98bf8bf6-3128-40ca-9a0d-ec9a67254c9a
X-Gitea-Event: push
X-Gitea-Event-Type: push
X-Gitea-Signature:
X-Gogs-Delivery: 98bf8bf6-3128-40ca-9a0d-ec9a67254c9a
X-Gogs-Event: push
X-Gogs-Event-Type: push
X-Gogs-Signature:
X-Hub-Signature: sha1=
X-Hub-Signature-256: sha256=
Content
{
"ref": "refs/heads/feat-remove-logo",
"before": "6d482c6723cef2092475a28618c4303117fe35f1",
"after": "41e2080b51c39dc9bda1a9dffbbcb9317b4466e0",
"compare_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com/compare/6d482c6723cef2092475a28618c4303117fe35f1...41e2080b51c39dc9bda1a9dffbbcb9317b4466e0",
"commits": [
{
"id": "41e2080b51c39dc9bda1a9dffbbcb9317b4466e0",
"message": "Trigger preview build 3\n",
"url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com/commit/41e2080b51c39dc9bda1a9dffbbcb9317b4466e0",
"author": {
"name": "Diego Vester",
"email": "[email protected]",
"username": ""
},
"committer": {
"name": "Diego Vester",
"email": "[email protected]",
"username": ""
},
"verification": null,
"timestamp": "2026-01-23T11:49:06-06:00",
"added": [],
"removed": [],
"modified": [
"src/App.vue"
]
}
],
"head_commit": {
"id": "41e2080b51c39dc9bda1a9dffbbcb9317b4466e0",
"message": "Trigger preview build 3\n",
"url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com/commit/41e2080b51c39dc9bda1a9dffbbcb9317b4466e0",
"author": {
"name": "Diego Vester",
"email": "[email protected]",
"username": ""
},
"committer": {
"name": "Diego Vester",
"email": "[email protected]",
"username": ""
},
"verification": null,
"timestamp": "2026-01-23T11:49:06-06:00",
"added": [],
"removed": [],
"modified": [
"src/App.vue"
]
},
"repository": {
"id": 2,
"owner": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
},
"name": "toonpets.corneruniverse.com",
"full_name": "diegovester/toonpets.corneruniverse.com",
"description": "Website for toonpets",
"empty": false,
"private": false,
"fork": false,
"template": false,
"parent": null,
"mirror": false,
"size": 565,
"html_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com",
"ssh_url": "[email protected]:diegovester/toonpets.corneruniverse.com.git",
"clone_url": "https://git.corneruniverse.com/diegovester/toonpets.corneruniverse.com.git",
"original_url": "",
"website": "",
"stars_count": 0,
"forks_count": 0,
"watchers_count": 1,
"open_issues_count": 0,
"open_pr_counter": 1,
"release_counter": 0,
"default_branch": "main",
"archived": false,
"created_at": "2026-01-17T17:53:48Z",
"updated_at": "2026-01-23T17:45:10Z",
"permissions": {
"admin": true,
"push": true,
"pull": true
},
"has_issues": true,
"internal_tracker": {
"enable_time_tracker": true,
"allow_only_contributors_to_track_time": true,
"enable_issue_dependencies": true
},
"has_wiki": true,
"has_pull_requests": true,
"has_projects": true,
"ignore_whitespace_conflicts": false,
"allow_merge_commits": true,
"allow_rebase": true,
"allow_rebase_explicit": true,
"allow_squash_merge": true,
"default_merge_style": "merge",
"avatar_url": "",
"internal": false,
"mirror_interval": "",
"mirror_updated": "0001-01-01T00:00:00Z",
"repo_transfer": null
},
"pusher": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
},
"sender": {
"id": 1,
"login": "diegovester",
"full_name": "Diego Vester",
"email": "[email protected]",
"avatar_url": "https://git.corneruniverse.com/avatar/7a562028261600667ea49909bdcba82e",
"language": "",
"is_admin": false,
"last_login": "0001-01-01T00:00:00Z",
"created": "2026-01-17T16:22:36Z",
"restricted": false,
"active": false,
"prohibit_login": false,
"location": "",
"website": "",
"description": "",
"visibility": "public",
"followers_count": 0,
"following_count": 0,
"starred_repos_count": 0,
"username": "diegovester"
}
}
Response 200
Headers
Access-Control-Allow-Credentials: true
Access-Control-Allow-Origin: https://agent.corneruniverse.com
Alt-Svc: h3=":443"; ma=86400
Cf-Cache-Status: DYNAMIC
Cf-Ray: 9c2920d30d9d1949-SJC
Connection: keep-alive
Content-Type: application/json; charset=utf-8
Date: Fri, 23 Jan 2026 17:49:32 GMT
Etag: W/"10-iE7in/+tnM3e/lfUEfxhgtTIdgI"
Nel: {"report_to":"cf-nel","success_fraction":0.0,"max_age":604800}
Report-To: {"group":"cf-nel","max_age":604800,"endpoints":[{"url":"https://a.nel.cloudflare.com/report/v4?s=o8DRWpV5blld%2FPKubaRZYkbUOKZoqMkPNFTwtydgXfcTGOwmGWSt0x4xFE59t3cEGqinZvC%2F9mcgiMcdJ86iPl8VVlJQ34EG2pCu7j7hy0np9OXiWls7xw%3D%3D"}]}
Server: cloudflare
Server-Timing: cfCacheStatus;desc="DYNAMIC",cfEdge;dur=6,cfOrigin;dur=39
Vary: Origin
X-Powered-By: Express
Body
{"ignored":true}
Loading…
Cancel
Save