Payload
{
"action": "completed",
"workflow_run": {
"id": 29761837677,
"name": "CI",
"node_id": "WFR_kwLOTVFhj88AAAAG7fGabQ",
"head_branch": "feat/omp-collab-command",
"head_sha": "722d03b39f48016cbde4fdc7c0d0d345093d7d43",
"path": ".github/workflows/ci.yml",
"display_title": "feat(slackbotv2): add /collab command for native OMP room control",
"run_number": 39,
"event": "pull_request",
"status": "completed",
"conclusion": "success",
"workflow_id": 311135038,
"check_suite_id": 80594627565,
"check_suite_node_id": "CS_kwDOTVFhj88AAAASw9Br7Q",
"url": "https://api.github.com/repos/darkmatter/centaur/actions/runs/29761837677",
"html_url": "https://github.com/darkmatter/centaur/actions/runs/29761837677",
"pull_requests": [
{
"url": "https://api.github.com/repos/darkmatter/centaur/pulls/18",
"id": 4092913203,
"number": 18,
"head": {
"ref": "feat/omp-collab-command",
"sha": "722d03b39f48016cbde4fdc7c0d0d345093d7d43",
"repo": {
"id": 1297179023,
"url": "https://api.github.com/repos/darkmatter/centaur",
"name": "centaur"
}
},
"base": {
"ref": "main",
"sha": "b46a1a0a640443522752ca05fc7d7e08888a1538",
"repo": {
"id": 1297179023,
"url": "https://api.github.com/repos/darkmatter/centaur",
"name": "centaur"
}
}
}
],
"created_at": "2026-07-20T16:58:22Z",
"updated_at": "2026-07-20T16:59:36Z",
"actor": {
"login": "czxtm",
"id": 1325802,
"node_id": "MDQ6VXNlcjEzMjU4MDI=",
"avatar_url": "https://avatars.githubusercontent.com/u/1325802?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/czxtm",
"html_url": "https://github.com/czxtm",
"followers_url": "https://api.github.com/users/czxtm/followers",
"following_url": "https://api.github.com/users/czxtm/following{/other_user}",
"gists_url": "https://api.github.com/users/czxtm/gists{/gist_id}",
"starred_url": "https://api.github.com/users/czxtm/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/czxtm/subscriptions",
"organizations_url": "https://api.github.com/users/czxtm/orgs",
"repos_url": "https://api.github.com/users/czxtm/repos",
"events_url": "https://api.github.com/users/czxtm/events{/privacy}",
"received_events_url": "https://api.github.com/users/czxtm/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"run_attempt": 1,
"referenced_workflows": [],
"run_started_at": "2026-07-20T16:58:22Z",
"triggering_actor": {
"login": "czxtm",
"id": 1325802,
"node_id": "MDQ6VXNlcjEzMjU4MDI=",
"avatar_url": "https://avatars.githubusercontent.com/u/1325802?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/czxtm",
"html_url": "https://github.com/czxtm",
"followers_url": "https://api.github.com/users/czxtm/followers",
"following_url": "https://api.github.com/users/czxtm/following{/other_user}",
"gists_url": "https://api.github.com/users/czxtm/gists{/gist_id}",
"starred_url": "https://api.github.com/users/czxtm/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/czxtm/subscriptions",
"organizations_url": "https://api.github.com/users/czxtm/orgs",
"repos_url": "https://api.github.com/users/czxtm/repos",
"events_url": "https://api.github.com/users/czxtm/events{/privacy}",
"received_events_url": "https://api.github.com/users/czxtm/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"jobs_url": "https://api.github.com/repos/darkmatter/centaur/actions/runs/29761837677/jobs",
"logs_url": "https://api.github.com/repos/darkmatter/centaur/actions/runs/29761837677/logs",
"check_suite_url": "https://api.github.com/repos/darkmatter/centaur/check-suites/80594627565",
"artifacts_url": "https://api.github.com/repos/darkmatter/centaur/actions/runs/29761837677/artifacts",
"cancel_url": "https://api.github.com/repos/darkmatter/centaur/actions/runs/29761837677/cancel",
"rerun_url": "https://api.github.com/repos/darkmatter/centaur/actions/runs/29761837677/rerun",
"previous_attempt_url": null,
"workflow_url": "https://api.github.com/repos/darkmatter/centaur/actions/workflows/311135038",
"head_commit": {
"id": "722d03b39f48016cbde4fdc7c0d0d345093d7d43",
"tree_id": "a801b4400bd602a4353b2b278a77bbfef6efc468",
"message": "test(slackbotv2): add shared collab contract fixture and validation tests\n\nCanonical JSON contract fixture (collab-contract.json) encoding the\nexact API contract shared between the Slack ingress (centaur-3w2.7)\nand the api-rs lifecycle implementation (centaur-3w2.6). The\ncollab-contract.test.ts validates that the slackbotv2 client types,\nroute paths, methods, field names, and ingress rules all match the\nfixture — a regression that diverges from the contract fails here.\n\n26 contract tests covering: route paths/methods, room state fields\n(snake_case), participant shape, response shapes for all three\nendpoints, client route calls, ingress rules (join command format,\nPOSIX escaping, no-synthesis, no-raw-URL, no-agent-turn,\nexactly-one-command), error codes, and sample output matching.",
"timestamp": "2026-07-20T16:58:08Z",
"author": {
"name": "cooper",
"email": "cooper@darkmatter.io"
},
"committer": {
"name": "cooper",
"email": "cooper@darkmatter.io"
}
},
"repository": {
"id": 1297179023,
"node_id": "R_kgDOTVFhjw",
"name": "centaur",
"full_name": "darkmatter/centaur",
"private": false,
"owner": {
"login": "darkmatter",
"id": 17834193,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
"avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/darkmatter",
"html_url": "https://github.com/darkmatter",
"followers_url": "https://api.github.com/users/darkmatter/followers",
"following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
"gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
"starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
"organizations_url": "https://api.github.com/users/darkmatter/orgs",
"repos_url": "https://api.github.com/users/darkmatter/repos",
"events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
"received_events_url": "https://api.github.com/users/darkmatter/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"html_url": "https://github.com/darkmatter/centaur",
"description": "Multiplayer, self-hosted, secure agents.",
"fork": true,
"url": "https://api.github.com/repos/darkmatter/centaur",
"forks_url": "https://api.github.com/repos/darkmatter/centaur/forks",
"keys_url": "https://api.github.com/repos/darkmatter/centaur/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/darkmatter/centaur/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/darkmatter/centaur/teams",
"hooks_url": "https://api.github.com/repos/darkmatter/centaur/hooks",
"issue_events_url": "https://api.github.com/repos/darkmatter/centaur/issues/events{/number}",
"events_url": "https://api.github.com/repos/darkmatter/centaur/events",
"assignees_url": "https://api.github.com/repos/darkmatter/centaur/assignees{/user}",
"branches_url": "https://api.github.com/repos/darkmatter/centaur/branches{/branch}",
"tags_url": "https://api.github.com/repos/darkmatter/centaur/tags",
"blobs_url": "https://api.github.com/repos/darkmatter/centaur/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/darkmatter/centaur/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/darkmatter/centaur/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/darkmatter/centaur/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/darkmatter/centaur/statuses/{sha}",
"languages_url": "https://api.github.com/repos/darkmatter/centaur/languages",
"stargazers_url": "https://api.github.com/repos/darkmatter/centaur/stargazers",
"contributors_url": "https://api.github.com/repos/darkmatter/centaur/contributors",
"subscribers_url": "https://api.github.com/repos/darkmatter/centaur/subscribers",
"subscription_url": "https://api.github.com/repos/darkmatter/centaur/subscription",
"commits_url": "https://api.github.com/repos/darkmatter/centaur/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/darkmatter/centaur/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/darkmatter/centaur/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/darkmatter/centaur/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/darkmatter/centaur/contents/{+path}",
"compare_url": "https://api.github.com/repos/darkmatter/centaur/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/darkmatter/centaur/merges",
"archive_url": "https://api.github.com/repos/darkmatter/centaur/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/darkmatter/centaur/downloads",
"issues_url": "https://api.github.com/repos/darkmatter/centaur/issues{/number}",
"pulls_url": "https://api.github.com/repos/darkmatter/centaur/pulls{/number}",
"milestones_url": "https://api.github.com/repos/darkmatter/centaur/milestones{/number}",
"notifications_url": "https://api.github.com/repos/darkmatter/centaur/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/darkmatter/centaur/labels{/name}",
"releases_url": "https://api.github.com/repos/darkmatter/centaur/releases{/id}",
"deployments_url": "https://api.github.com/repos/darkmatter/centaur/deployments"
},
"head_repository": {
"id": 1297179023,
"node_id": "R_kgDOTVFhjw",
"name": "centaur",
"full_name": "darkmatter/centaur",
"private": false,
"owner": {
"login": "darkmatter",
"id": 17834193,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
"avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/darkmatter",
"html_url": "https://github.com/darkmatter",
"followers_url": "https://api.github.com/users/darkmatter/followers",
"following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
"gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
"starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
"organizations_url": "https://api.github.com/users/darkmatter/orgs",
"repos_url": "https://api.github.com/users/darkmatter/repos",
"events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
"received_events_url": "https://api.github.com/users/darkmatter/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"html_url": "https://github.com/darkmatter/centaur",
"description": "Multiplayer, self-hosted, secure agents.",
"fork": true,
"url": "https://api.github.com/repos/darkmatter/centaur",
"forks_url": "https://api.github.com/repos/darkmatter/centaur/forks",
"keys_url": "https://api.github.com/repos/darkmatter/centaur/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/darkmatter/centaur/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/darkmatter/centaur/teams",
"hooks_url": "https://api.github.com/repos/darkmatter/centaur/hooks",
"issue_events_url": "https://api.github.com/repos/darkmatter/centaur/issues/events{/number}",
"events_url": "https://api.github.com/repos/darkmatter/centaur/events",
"assignees_url": "https://api.github.com/repos/darkmatter/centaur/assignees{/user}",
"branches_url": "https://api.github.com/repos/darkmatter/centaur/branches{/branch}",
"tags_url": "https://api.github.com/repos/darkmatter/centaur/tags",
"blobs_url": "https://api.github.com/repos/darkmatter/centaur/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/darkmatter/centaur/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/darkmatter/centaur/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/darkmatter/centaur/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/darkmatter/centaur/statuses/{sha}",
"languages_url": "https://api.github.com/repos/darkmatter/centaur/languages",
"stargazers_url": "https://api.github.com/repos/darkmatter/centaur/stargazers",
"contributors_url": "https://api.github.com/repos/darkmatter/centaur/contributors",
"subscribers_url": "https://api.github.com/repos/darkmatter/centaur/subscribers",
"subscription_url": "https://api.github.com/repos/darkmatter/centaur/subscription",
"commits_url": "https://api.github.com/repos/darkmatter/centaur/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/darkmatter/centaur/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/darkmatter/centaur/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/darkmatter/centaur/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/darkmatter/centaur/contents/{+path}",
"compare_url": "https://api.github.com/repos/darkmatter/centaur/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/darkmatter/centaur/merges",
"archive_url": "https://api.github.com/repos/darkmatter/centaur/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/darkmatter/centaur/downloads",
"issues_url": "https://api.github.com/repos/darkmatter/centaur/issues{/number}",
"pulls_url": "https://api.github.com/repos/darkmatter/centaur/pulls{/number}",
"milestones_url": "https://api.github.com/repos/darkmatter/centaur/milestones{/number}",
"notifications_url": "https://api.github.com/repos/darkmatter/centaur/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/darkmatter/centaur/labels{/name}",
"releases_url": "https://api.github.com/repos/darkmatter/centaur/releases{/id}",
"deployments_url": "https://api.github.com/repos/darkmatter/centaur/deployments"
}
},
"workflow": {
"id": 311135038,
"node_id": "W_kwDOTVFhj84Si4s-",
"name": "CI",
"path": ".github/workflows/ci.yml",
"state": "active",
"created_at": "2026-07-11T06:54:40.000Z",
"updated_at": "2026-07-11T06:54:40.000Z",
"url": "https://api.github.com/repos/darkmatter/centaur/actions/workflows/311135038",
"html_url": "https://github.com/darkmatter/centaur/blob/main/.github/workflows/ci.yml",
"badge_url": "https://github.com/darkmatter/centaur/workflows/CI/badge.svg"
},
"repository": {
"id": 1297179023,
"node_id": "R_kgDOTVFhjw",
"name": "centaur",
"full_name": "darkmatter/centaur",
"private": false,
"owner": {
"login": "darkmatter",
"id": 17834193,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
"avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/darkmatter",
"html_url": "https://github.com/darkmatter",
"followers_url": "https://api.github.com/users/darkmatter/followers",
"following_url": "https://api.github.com/users/darkmatter/following{/other_user}",
"gists_url": "https://api.github.com/users/darkmatter/gists{/gist_id}",
"starred_url": "https://api.github.com/users/darkmatter/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/darkmatter/subscriptions",
"organizations_url": "https://api.github.com/users/darkmatter/orgs",
"repos_url": "https://api.github.com/users/darkmatter/repos",
"events_url": "https://api.github.com/users/darkmatter/events{/privacy}",
"received_events_url": "https://api.github.com/users/darkmatter/received_events",
"type": "Organization",
"user_view_type": "public",
"site_admin": false
},
"html_url": "https://github.com/darkmatter/centaur",
"description": "Multiplayer, self-hosted, secure agents.",
"fork": true,
"url": "https://api.github.com/repos/darkmatter/centaur",
"forks_url": "https://api.github.com/repos/darkmatter/centaur/forks",
"keys_url": "https://api.github.com/repos/darkmatter/centaur/keys{/key_id}",
"collaborators_url": "https://api.github.com/repos/darkmatter/centaur/collaborators{/collaborator}",
"teams_url": "https://api.github.com/repos/darkmatter/centaur/teams",
"hooks_url": "https://api.github.com/repos/darkmatter/centaur/hooks",
"issue_events_url": "https://api.github.com/repos/darkmatter/centaur/issues/events{/number}",
"events_url": "https://api.github.com/repos/darkmatter/centaur/events",
"assignees_url": "https://api.github.com/repos/darkmatter/centaur/assignees{/user}",
"branches_url": "https://api.github.com/repos/darkmatter/centaur/branches{/branch}",
"tags_url": "https://api.github.com/repos/darkmatter/centaur/tags",
"blobs_url": "https://api.github.com/repos/darkmatter/centaur/git/blobs{/sha}",
"git_tags_url": "https://api.github.com/repos/darkmatter/centaur/git/tags{/sha}",
"git_refs_url": "https://api.github.com/repos/darkmatter/centaur/git/refs{/sha}",
"trees_url": "https://api.github.com/repos/darkmatter/centaur/git/trees{/sha}",
"statuses_url": "https://api.github.com/repos/darkmatter/centaur/statuses/{sha}",
"languages_url": "https://api.github.com/repos/darkmatter/centaur/languages",
"stargazers_url": "https://api.github.com/repos/darkmatter/centaur/stargazers",
"contributors_url": "https://api.github.com/repos/darkmatter/centaur/contributors",
"subscribers_url": "https://api.github.com/repos/darkmatter/centaur/subscribers",
"subscription_url": "https://api.github.com/repos/darkmatter/centaur/subscription",
"commits_url": "https://api.github.com/repos/darkmatter/centaur/commits{/sha}",
"git_commits_url": "https://api.github.com/repos/darkmatter/centaur/git/commits{/sha}",
"comments_url": "https://api.github.com/repos/darkmatter/centaur/comments{/number}",
"issue_comment_url": "https://api.github.com/repos/darkmatter/centaur/issues/comments{/number}",
"contents_url": "https://api.github.com/repos/darkmatter/centaur/contents/{+path}",
"compare_url": "https://api.github.com/repos/darkmatter/centaur/compare/{base}...{head}",
"merges_url": "https://api.github.com/repos/darkmatter/centaur/merges",
"archive_url": "https://api.github.com/repos/darkmatter/centaur/{archive_format}{/ref}",
"downloads_url": "https://api.github.com/repos/darkmatter/centaur/downloads",
"issues_url": "https://api.github.com/repos/darkmatter/centaur/issues{/number}",
"pulls_url": "https://api.github.com/repos/darkmatter/centaur/pulls{/number}",
"milestones_url": "https://api.github.com/repos/darkmatter/centaur/milestones{/number}",
"notifications_url": "https://api.github.com/repos/darkmatter/centaur/notifications{?since,all,participating}",
"labels_url": "https://api.github.com/repos/darkmatter/centaur/labels{/name}",
"releases_url": "https://api.github.com/repos/darkmatter/centaur/releases{/id}",
"deployments_url": "https://api.github.com/repos/darkmatter/centaur/deployments",
"created_at": "2026-07-11T06:11:04Z",
"updated_at": "2026-07-20T16:26:24Z",
"pushed_at": "2026-07-20T16:58:13Z",
"git_url": "git://github.com/darkmatter/centaur.git",
"ssh_url": "org-17834193@github.com:darkmatter/centaur.git",
"clone_url": "https://github.com/darkmatter/centaur.git",
"svn_url": "https://github.com/darkmatter/centaur",
"homepage": "https://centaur.run",
"size": 40497,
"stargazers_count": 0,
"watchers_count": 0,
"language": "Python",
"has_issues": false,
"has_projects": true,
"has_downloads": true,
"has_wiki": true,
"has_pages": false,
"has_discussions": false,
"forks_count": 0,
"mirror_url": null,
"archived": false,
"disabled": false,
"open_issues_count": 2,
"license": {
"key": "other",
"name": "Other",
"spdx_id": "NOASSERTION",
"url": null,
"node_id": "MDc6TGljZW5zZTA="
},
"allow_forking": true,
"is_template": false,
"web_commit_signoff_required": false,
"has_pull_requests": true,
"pull_request_creation_policy": "all",
"topics": [],
"visibility": "public",
"forks": 0,
"open_issues": 2,
"watchers": 0,
"default_branch": "main",
"custom_properties": {}
},
"organization": {
"login": "darkmatter",
"id": 17834193,
"node_id": "MDEyOk9yZ2FuaXphdGlvbjE3ODM0MTkz",
"url": "https://api.github.com/orgs/darkmatter",
"repos_url": "https://api.github.com/orgs/darkmatter/repos",
"events_url": "https://api.github.com/orgs/darkmatter/events",
"hooks_url": "https://api.github.com/orgs/darkmatter/hooks",
"issues_url": "https://api.github.com/orgs/darkmatter/issues",
"members_url": "https://api.github.com/orgs/darkmatter/members{/member}",
"public_members_url": "https://api.github.com/orgs/darkmatter/public_members{/member}",
"avatar_url": "https://avatars.githubusercontent.com/u/17834193?v=4",
"description": ""
},
"enterprise": {
"id": 469843,
"slug": "darkmatter",
"name": "darkmatter",
"node_id": "E_kgDOAAcrUw",
"avatar_url": "https://avatars.githubusercontent.com/b/469843?v=4",
"description": "",
"website_url": "darkmatter.io",
"html_url": "https://github.com/enterprises/darkmatter",
"created_at": "2025-09-07T16:01:00Z",
"updated_at": "2026-07-07T15:59:26Z"
},
"sender": {
"login": "czxtm",
"id": 1325802,
"node_id": "MDQ6VXNlcjEzMjU4MDI=",
"avatar_url": "https://avatars.githubusercontent.com/u/1325802?v=4",
"gravatar_id": "",
"url": "https://api.github.com/users/czxtm",
"html_url": "https://github.com/czxtm",
"followers_url": "https://api.github.com/users/czxtm/followers",
"following_url": "https://api.github.com/users/czxtm/following{/other_user}",
"gists_url": "https://api.github.com/users/czxtm/gists{/gist_id}",
"starred_url": "https://api.github.com/users/czxtm/starred{/owner}{/repo}",
"subscriptions_url": "https://api.github.com/users/czxtm/subscriptions",
"organizations_url": "https://api.github.com/users/czxtm/orgs",
"repos_url": "https://api.github.com/users/czxtm/repos",
"events_url": "https://api.github.com/users/czxtm/events{/privacy}",
"received_events_url": "https://api.github.com/users/czxtm/received_events",
"type": "User",
"user_view_type": "public",
"site_admin": false
},
"installation": {
"id": 131074261,
"node_id": "MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMTMxMDc0MjYx"
}
}