registry: add sqlx checks for workspace and stream reads

This commit is contained in:
a.tolmachev
2026-04-12 20:49:12 +00:00
parent 57c73b5cb2
commit 6a909feb64
15 changed files with 1195 additions and 151 deletions
@@ -0,0 +1,56 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n slug,\n display_name,\n status,\n settings_json,\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(updated_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"updated_at!\"\n from workspaces\n order by slug asc",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "slug",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "display_name",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "settings_json",
"type_info": "Jsonb"
},
{
"ordinal": 5,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "updated_at!",
"type_info": "Text"
}
],
"parameters": {
"Left": []
},
"nullable": [
false,
false,
false,
false,
false,
null,
null
]
},
"hash": "0701c93547a515170803136ed093c06df78d08e83c9f2eee241204820fd20f5c"
}
@@ -0,0 +1,94 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n workspace_id,\n agent_id,\n operation_id,\n protocol,\n mode,\n status,\n cursor_json,\n state_json,\n to_char(expires_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"expires_at!\",\n to_char(last_poll_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as last_poll_at,\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(closed_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as closed_at\n from stream_sessions\n where id = $1",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "agent_id",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "operation_id",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "protocol",
"type_info": "Text"
},
{
"ordinal": 5,
"name": "mode",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 7,
"name": "cursor_json",
"type_info": "Jsonb"
},
{
"ordinal": 8,
"name": "state_json",
"type_info": "Jsonb"
},
{
"ordinal": 9,
"name": "expires_at!",
"type_info": "Text"
},
{
"ordinal": 10,
"name": "last_poll_at",
"type_info": "Text"
},
{
"ordinal": 11,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 12,
"name": "closed_at",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text"
]
},
"nullable": [
false,
false,
true,
false,
false,
false,
false,
true,
false,
null,
null,
null,
null
]
},
"hash": "0c383ab1d4c5c178f9ded8219a81da145a4ba6198a67de5c7e060803619ad7fc"
}
@@ -0,0 +1,65 @@
{
"db_name": "PostgreSQL",
"query": "select\n k.id,\n k.workspace_id,\n k.name,\n k.prefix,\n k.scopes_json,\n k.status,\n to_char(k.created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(k.last_used_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as last_used_at\n from platform_api_keys k\n join workspaces w on w.id = k.workspace_id\n where w.slug = $1\n and k.secret_hash = $2\n and k.status = 'active'\n limit 1",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "name",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "prefix",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "scopes_json",
"type_info": "Jsonb"
},
{
"ordinal": 5,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 7,
"name": "last_used_at",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text",
"Text"
]
},
"nullable": [
false,
false,
false,
false,
false,
false,
null,
null
]
},
"hash": "2b0b383bd209c6a94d6a422fbd52bf63338c048238c3ff63c44eddf6a56b8a0b"
}
@@ -0,0 +1,64 @@
{
"db_name": "PostgreSQL",
"query": "select\n w.id,\n w.slug,\n w.display_name,\n w.status,\n w.settings_json,\n to_char(w.created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(w.updated_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"updated_at!\",\n m.role\n from memberships m\n join workspaces w on w.id = m.workspace_id\n where m.user_id = $1\n order by w.slug asc",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "slug",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "display_name",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "settings_json",
"type_info": "Jsonb"
},
{
"ordinal": 5,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "updated_at!",
"type_info": "Text"
},
{
"ordinal": 7,
"name": "role",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text"
]
},
"nullable": [
false,
false,
false,
false,
false,
null,
null,
false
]
},
"hash": "4206303b16bfbe2abc436d00ad5da3358246a78c0bb283321c9441e7eea68467"
}
@@ -0,0 +1,99 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n workspace_id,\n agent_id,\n operation_id,\n protocol,\n mode,\n status,\n cursor_json,\n state_json,\n to_char(expires_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"expires_at!\",\n to_char(last_poll_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as last_poll_at,\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(closed_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as closed_at\n from stream_sessions\n where workspace_id = $1\n and ($2::text is null or agent_id = $2)\n and ($3::text is null or operation_id = $3)\n and ($4::text is null or status = $4)\n and ($5::text is null or mode = $5)\n order by created_at desc\n limit $6",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "agent_id",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "operation_id",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "protocol",
"type_info": "Text"
},
{
"ordinal": 5,
"name": "mode",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 7,
"name": "cursor_json",
"type_info": "Jsonb"
},
{
"ordinal": 8,
"name": "state_json",
"type_info": "Jsonb"
},
{
"ordinal": 9,
"name": "expires_at!",
"type_info": "Text"
},
{
"ordinal": 10,
"name": "last_poll_at",
"type_info": "Text"
},
{
"ordinal": 11,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 12,
"name": "closed_at",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text",
"Text",
"Text",
"Text",
"Text",
"Int8"
]
},
"nullable": [
false,
false,
true,
false,
false,
false,
false,
true,
false,
null,
null,
null,
null
]
},
"hash": "4e2091cb75e67ac455b0efee795e94b8a18807a59a0f11796fec27519f34817d"
}
@@ -0,0 +1,92 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n workspace_id,\n agent_id,\n operation_id,\n status,\n progress_json,\n result_json,\n error_json,\n to_char(expires_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as expires_at,\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(updated_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"updated_at!\",\n to_char(finished_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as finished_at\n from async_jobs\n where workspace_id = $1\n and ($2::text is null or agent_id = $2)\n and ($3::text is null or operation_id = $3)\n and ($4::text is null or status = $4)\n order by updated_at desc\n limit $5",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "agent_id",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "operation_id",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 5,
"name": "progress_json",
"type_info": "Jsonb"
},
{
"ordinal": 6,
"name": "result_json",
"type_info": "Jsonb"
},
{
"ordinal": 7,
"name": "error_json",
"type_info": "Jsonb"
},
{
"ordinal": 8,
"name": "expires_at",
"type_info": "Text"
},
{
"ordinal": 9,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 10,
"name": "updated_at!",
"type_info": "Text"
},
{
"ordinal": 11,
"name": "finished_at",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text",
"Text",
"Text",
"Text",
"Int8"
]
},
"nullable": [
false,
false,
true,
false,
false,
false,
true,
true,
null,
null,
null,
null
]
},
"hash": "6f55f9867b0fdaeedaa5995462e70e3b2118fb595c8d6e313b5f0271c0f5d537"
}
@@ -0,0 +1,58 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n slug,\n display_name,\n status,\n settings_json,\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(updated_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"updated_at!\"\n from workspaces\n where id = $1",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "slug",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "display_name",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "settings_json",
"type_info": "Jsonb"
},
{
"ordinal": 5,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "updated_at!",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text"
]
},
"nullable": [
false,
false,
false,
false,
false,
null,
null
]
},
"hash": "925b63209407fe86b78bf5458b1a17253db129a7a13a6c7bc4db4f439244009c"
}
@@ -0,0 +1,64 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n workspace_id,\n email,\n role,\n status,\n token_hash,\n to_char(expires_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"expires_at!\",\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\"\n from invitation_tokens\n where workspace_id = $1\n order by created_at desc",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "email",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "role",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 5,
"name": "token_hash",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "expires_at!",
"type_info": "Text"
},
{
"ordinal": 7,
"name": "created_at!",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text"
]
},
"nullable": [
false,
false,
false,
false,
false,
false,
null,
null
]
},
"hash": "b69d55c4b0352cac007496828e2d08369749bac52d2076c3ba679c4aaa466fc9"
}
@@ -0,0 +1,64 @@
{
"db_name": "PostgreSQL",
"query": "select\n m.workspace_id,\n m.user_id,\n m.role,\n to_char(m.created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n u.email,\n u.display_name,\n u.status,\n to_char(u.created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"user_created_at!\"\n from memberships m\n join users u on u.id = m.user_id\n where m.workspace_id = $1\n order by u.email asc",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "user_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "role",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "email",
"type_info": "Text"
},
{
"ordinal": 5,
"name": "display_name",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 7,
"name": "user_created_at!",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text"
]
},
"nullable": [
false,
false,
false,
null,
false,
false,
false,
null
]
},
"hash": "d485e119dd288962586c35b7585c74c6c3518f3d3995ea21a22cc35e092da147"
}
@@ -0,0 +1,88 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n workspace_id,\n agent_id,\n operation_id,\n status,\n progress_json,\n result_json,\n error_json,\n to_char(expires_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as expires_at,\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(updated_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"updated_at!\",\n to_char(finished_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as finished_at\n from async_jobs\n where id = $1",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "agent_id",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "operation_id",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 5,
"name": "progress_json",
"type_info": "Jsonb"
},
{
"ordinal": 6,
"name": "result_json",
"type_info": "Jsonb"
},
{
"ordinal": 7,
"name": "error_json",
"type_info": "Jsonb"
},
{
"ordinal": 8,
"name": "expires_at",
"type_info": "Text"
},
{
"ordinal": 9,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 10,
"name": "updated_at!",
"type_info": "Text"
},
{
"ordinal": 11,
"name": "finished_at",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text"
]
},
"nullable": [
false,
false,
true,
false,
false,
false,
true,
true,
null,
null,
null,
null
]
},
"hash": "e92340e11c1b1d5dcd1441f12588e01fa18acc43e18316ea9789cd60e4967eaf"
}
@@ -0,0 +1,64 @@
{
"db_name": "PostgreSQL",
"query": "select\n id,\n workspace_id,\n name,\n prefix,\n scopes_json,\n status,\n to_char(created_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as \"created_at!\",\n to_char(last_used_at at time zone 'UTC', 'YYYY-MM-DD\"T\"HH24:MI:SS\"Z\"') as last_used_at\n from platform_api_keys\n where workspace_id = $1\n order by created_at desc",
"describe": {
"columns": [
{
"ordinal": 0,
"name": "id",
"type_info": "Text"
},
{
"ordinal": 1,
"name": "workspace_id",
"type_info": "Text"
},
{
"ordinal": 2,
"name": "name",
"type_info": "Text"
},
{
"ordinal": 3,
"name": "prefix",
"type_info": "Text"
},
{
"ordinal": 4,
"name": "scopes_json",
"type_info": "Jsonb"
},
{
"ordinal": 5,
"name": "status",
"type_info": "Text"
},
{
"ordinal": 6,
"name": "created_at!",
"type_info": "Text"
},
{
"ordinal": 7,
"name": "last_used_at",
"type_info": "Text"
}
],
"parameters": {
"Left": [
"Text"
]
},
"nullable": [
false,
false,
false,
false,
false,
false,
null,
null
]
},
"hash": "ed3c533baee2cdec1fabc3e3cece29939fee23fdf54dc4848a0951f3dd274f1f"
}