test(mobile): correct the gitlab.todos fixture to a real GitLabTodo row

The `tk-list-gitlab-todos` reply sent `[{ id, targetType, target: { … } }]`, a shape `listTodos`
never produces: the host returns `GitLabTodo[]`, whose row carries `actionName`, `targetTitle`,
`targetUrl`, `projectPath` and `updatedAt` flat. Main crashed on it —
`Cannot read properties of undefined (reading 'replace')` from `createGitLabTodoTask`, with the
list rendering as an empty inbox and a raw TypeError on screen.

That crash was being read as evidence: a reader could not narrow this row without "refusing the
site's only success control", when the control was never a success. The fixture is the defect, so
the fixture is what moves.

The row is now a real `GitLabTodo` (src/shared/gitlab-types.ts:219) and main renders it: one item
titled "A GitLab todo", subtitle `group/project #4`, status `review requested`.

Recorded from the pinned main tree, not from this branch, so the corrected fixture's main
projection exists as a golden before any reader touches it: a detached worktree at
`4b876758d3158a8eb6b798055d8db7c58d1cd4a9` with this branch's manifest laid over it and its
`baseline` set to that commit, per the recorder README's detached-pin recipe. Control: all 756
other goldens reproduced the base corpus byte for byte; only these two moved. Both keep
`baseline: 4b876758d3`, which is the tree that produced them.

Claude-Session: https://claude.ai/code/session_01JNnE9qzUZMMnqpZWCqM3nb
This commit is contained in:
Jinwoo-H
2026-09-16 23:56:22 -04:00
parent f1b695f161
commit 32bd65c134
3 changed files with 211 additions and 127 deletions
@@ -3,11 +3,11 @@
"family": "tasks.task-list-gitlab-todos",
"namedDeltas": [],
"runnerVersion": 1,
"baseline": "9133c02c5bfc9cdb2265e4def52155bb331e7553",
"baseline": "4b876758d3158a8eb6b798055d8db7c58d1cd4a9",
"lockfileSha256": "788c1234b38a61fc882fca292341fce6690deee9cc6695673b0575cf2c4cf571",
"recorderSha256": "d4fa125899cd863c03dbf96657d46b8c7d6c0ccf522b342bc4f164ed1e3becfe",
"adapterSha256": "07a15e900363faa25bc364f5bc1c330f96798abfeaed35210428c2ac558586b8",
"scenarioSha256": "8b0b64a6a0ef6e1cc6baa28e632fd3394a6c8b825f0835daa9634fa41c8685aa",
"scenarioSha256": "e36b90621e11880ec1e6c16e8e3c89cc14f5d68a4a9e06b8a3098fc0bd0104a2",
"platform": "darwin",
"scenarioVersion": 1,
"projectionVersion": 2,
@@ -99,6 +99,33 @@
"ordinal": 5,
"value": []
},
"2ee5e836afb7": {
"name": "items",
"ordinal": 5,
"value": [
{
"key": "gitlab-todo:1",
"provider": "gitlabTodo",
"source": {
"actionName": "review_requested",
"authorAvatarUrl": "",
"authorUsername": "octocat",
"id": 1,
"projectPath": "group/project",
"state": "pending",
"targetIid": 4,
"targetTitle": "A GitLab todo",
"targetType": "Issue",
"targetUrl": "https://gitlab.example.com/group/project/-/issues/4",
"updatedAt": "2020-01-01T00:00:00.000Z"
},
"status": "review requested",
"subtitle": "group/project #4",
"title": "A GitLab todo",
"updatedAt": "2020-01-01T00:00:00.000Z"
}
]
},
"35fee2e074f0": {
"name": "gitlab.todos#1",
"ordinal": 3,
@@ -199,51 +226,6 @@
"ordinal": 2,
"value": true
},
"65696d9af446": {
"name": "gitlab.todos#1",
"ordinal": 3,
"args": [
{
"name": "method",
"value": "gitlab.todos"
},
{
"name": "params",
"value": {
"repo": "id:repo-1"
}
},
{
"name": "options",
"value": {
"$rpc": "absent"
}
}
],
"settlement": {
"status": "fulfilled",
"startedAt": 0,
"settledAt": 0,
"value": {
"id": "frame-1",
"ok": true,
"result": [
{
"id": 1,
"target": {
"id": "gid://1",
"iid": 4,
"state": "opened",
"title": "A GitLab todo",
"updatedAt": "2020-01-01T00:00:00.000Z",
"webUrl": ""
},
"targetType": "Issue"
}
]
}
}
},
"682c92d9610e": {
"name": "gitlab.todos#1",
"ordinal": 3,
@@ -278,12 +260,6 @@
}
}
},
"6d1d0fdc038f": {
"error": "The host sent a reply this app could not read (gitlab.todos)",
"items": [],
"loading": false,
"refreshing": false
},
"6d7869e6f6ea": {
"name": "loading",
"ordinal": 6,
@@ -321,17 +297,58 @@
}
}
},
"77882f3fe361": {
"name": "error",
"ordinal": 6,
"value": "Cannot read properties of undefined (reading 'replace')"
},
"820944a2683d": {
"error": "outer refused",
"items": [],
"loading": false,
"refreshing": false
},
"8511d41d7490": {
"name": "gitlab.todos#1",
"ordinal": 3,
"args": [
{
"name": "method",
"value": "gitlab.todos"
},
{
"name": "params",
"value": {
"repo": "id:repo-1"
}
},
{
"name": "options",
"value": {
"$rpc": "absent"
}
}
],
"settlement": {
"status": "fulfilled",
"startedAt": 0,
"settledAt": 0,
"value": {
"id": "frame-1",
"ok": true,
"result": [
{
"actionName": "review_requested",
"authorAvatarUrl": "",
"authorUsername": "octocat",
"id": 1,
"projectPath": "group/project",
"state": "pending",
"targetIid": 4,
"targetTitle": "A GitLab todo",
"targetType": "Issue",
"targetUrl": "https://gitlab.example.com/group/project/-/issues/4",
"updatedAt": "2020-01-01T00:00:00.000Z"
}
]
}
}
},
"87720d7ea28a": {
"name": "gitlab.todos#1",
"ordinal": 3,
@@ -410,10 +427,33 @@
}
}
},
"bdb019c11efb": {
"name": "error",
"ordinal": 6,
"value": "The host sent a reply this app could not read (gitlab.todos)"
"d57ec76a49a3": {
"error": "",
"items": [
{
"key": "gitlab-todo:1",
"provider": "gitlabTodo",
"source": {
"actionName": "review_requested",
"authorAvatarUrl": "",
"authorUsername": "octocat",
"id": 1,
"projectPath": "group/project",
"state": "pending",
"targetIid": 4,
"targetTitle": "A GitLab todo",
"targetType": "Issue",
"targetUrl": "https://gitlab.example.com/group/project/-/issues/4",
"updatedAt": "2020-01-01T00:00:00.000Z"
},
"status": "review requested",
"subtitle": "group/project #4",
"title": "A GitLab todo",
"updatedAt": "2020-01-01T00:00:00.000Z"
}
],
"loading": false,
"refreshing": false
},
"eb79a9b3682a": {
"status": "fulfilled",
@@ -458,6 +498,12 @@
}
}
},
"f0df2712eb78": {
"error": "(response.result ?? []).map is not a function",
"items": [],
"loading": false,
"refreshing": false
},
"f11183466799": {
"error": "Unknown method",
"items": [],
@@ -474,11 +520,10 @@
"ordinal": 6,
"value": "outer refused"
},
"f7da7040be7b": {
"error": "Cannot read properties of undefined (reading 'replace')",
"items": [],
"loading": false,
"refreshing": false
"f56c22495539": {
"name": "error",
"ordinal": 6,
"value": "(response.result ?? []).map is not a function"
},
"fe6919657d3a": {
"name": "gitlab.todos#1",
@@ -519,20 +564,19 @@
{
"id": "tk-list-gitlab-todos.normal:load-settled",
"observation": {
"sender": ["65696d9af446"],
"sender": ["8511d41d7490"],
"payloads": ["038bb64a38ce"],
"settlements": {
"mount": "eb79a9b3682a",
"load-0": "eb79a9b3682a"
},
"state": "f7da7040be7b",
"state": "d57ec76a49a3",
"effects": [
"39f99cf479f0",
"609f32a21704",
"1f4eeb3dcff1",
"77882f3fe361",
"5ac1816a09df",
"411aee2eccd9"
"2ee5e836afb7",
"6d7869e6f6ea",
"88d78bf42794"
]
}
},
@@ -583,12 +627,12 @@
"mount": "eb79a9b3682a",
"load-0": "eb79a9b3682a"
},
"state": "6d1d0fdc038f",
"state": "f0df2712eb78",
"effects": [
"39f99cf479f0",
"609f32a21704",
"1f4eeb3dcff1",
"bdb019c11efb",
"f56c22495539",
"5ac1816a09df",
"411aee2eccd9"
]
@@ -603,12 +647,12 @@
"mount": "eb79a9b3682a",
"load-0": "eb79a9b3682a"
},
"state": "6d1d0fdc038f",
"state": "f0df2712eb78",
"effects": [
"39f99cf479f0",
"609f32a21704",
"1f4eeb3dcff1",
"bdb019c11efb",
"f56c22495539",
"5ac1816a09df",
"411aee2eccd9"
]
@@ -623,12 +667,12 @@
"mount": "eb79a9b3682a",
"load-0": "eb79a9b3682a"
},
"state": "6d1d0fdc038f",
"state": "f0df2712eb78",
"effects": [
"39f99cf479f0",
"609f32a21704",
"1f4eeb3dcff1",
"bdb019c11efb",
"f56c22495539",
"5ac1816a09df",
"411aee2eccd9"
]
@@ -3,11 +3,11 @@
"family": "tasks.task-list-gitlab-todos",
"namedDeltas": [],
"runnerVersion": 1,
"baseline": "9133c02c5bfc9cdb2265e4def52155bb331e7553",
"baseline": "4b876758d3158a8eb6b798055d8db7c58d1cd4a9",
"lockfileSha256": "788c1234b38a61fc882fca292341fce6690deee9cc6695673b0575cf2c4cf571",
"recorderSha256": "d4fa125899cd863c03dbf96657d46b8c7d6c0ccf522b342bc4f164ed1e3becfe",
"adapterSha256": "07a15e900363faa25bc364f5bc1c330f96798abfeaed35210428c2ac558586b8",
"scenarioSha256": "a9e791f56e991e822b2a9f55db22eabbc39ad36ed669c87b6866ba7fe8eea24a",
"scenarioSha256": "ba91378284c5dc3dc470f0601e4ff0202622a8d1fb97f27ab45c096d65c0bb48",
"platform": "darwin",
"scenarioVersion": 1,
"projectionVersion": 2,
@@ -18,32 +18,49 @@
"ordinal": 4,
"json": "{\"id\":\"frame-1\",\"deviceToken\":\"recording-device\",\"method\":\"gitlab.todos\",\"params\":{\"repo\":\"id:repo-1\"}}"
},
"1f4eeb3dcff1": {
"2ee5e836afb7": {
"name": "items",
"ordinal": 5,
"value": []
"value": [
{
"key": "gitlab-todo:1",
"provider": "gitlabTodo",
"source": {
"actionName": "review_requested",
"authorAvatarUrl": "",
"authorUsername": "octocat",
"id": 1,
"projectPath": "group/project",
"state": "pending",
"targetIid": 4,
"targetTitle": "A GitLab todo",
"targetType": "Issue",
"targetUrl": "https://gitlab.example.com/group/project/-/issues/4",
"updatedAt": "2020-01-01T00:00:00.000Z"
},
"status": "review requested",
"subtitle": "group/project #4",
"title": "A GitLab todo",
"updatedAt": "2020-01-01T00:00:00.000Z"
}
]
},
"39f99cf479f0": {
"name": "error",
"ordinal": 1,
"value": ""
},
"411aee2eccd9": {
"name": "refreshing",
"ordinal": 8,
"value": false
},
"5ac1816a09df": {
"name": "loading",
"ordinal": 7,
"value": false
},
"609f32a21704": {
"name": "loading",
"ordinal": 2,
"value": true
},
"65696d9af446": {
"6d7869e6f6ea": {
"name": "loading",
"ordinal": 6,
"value": false
},
"8511d41d7490": {
"name": "gitlab.todos#1",
"ordinal": 3,
"args": [
@@ -73,25 +90,54 @@
"ok": true,
"result": [
{
"actionName": "review_requested",
"authorAvatarUrl": "",
"authorUsername": "octocat",
"id": 1,
"target": {
"id": "gid://1",
"iid": 4,
"state": "opened",
"title": "A GitLab todo",
"updatedAt": "2020-01-01T00:00:00.000Z",
"webUrl": ""
},
"targetType": "Issue"
"projectPath": "group/project",
"state": "pending",
"targetIid": 4,
"targetTitle": "A GitLab todo",
"targetType": "Issue",
"targetUrl": "https://gitlab.example.com/group/project/-/issues/4",
"updatedAt": "2020-01-01T00:00:00.000Z"
}
]
}
}
},
"77882f3fe361": {
"name": "error",
"ordinal": 6,
"value": "Cannot read properties of undefined (reading 'replace')"
"88d78bf42794": {
"name": "refreshing",
"ordinal": 7,
"value": false
},
"d57ec76a49a3": {
"error": "",
"items": [
{
"key": "gitlab-todo:1",
"provider": "gitlabTodo",
"source": {
"actionName": "review_requested",
"authorAvatarUrl": "",
"authorUsername": "octocat",
"id": 1,
"projectPath": "group/project",
"state": "pending",
"targetIid": 4,
"targetTitle": "A GitLab todo",
"targetType": "Issue",
"targetUrl": "https://gitlab.example.com/group/project/-/issues/4",
"updatedAt": "2020-01-01T00:00:00.000Z"
},
"status": "review requested",
"subtitle": "group/project #4",
"title": "A GitLab todo",
"updatedAt": "2020-01-01T00:00:00.000Z"
}
],
"loading": false,
"refreshing": false
},
"eb79a9b3682a": {
"status": "fulfilled",
@@ -100,12 +146,6 @@
"value": {
"$rpc": "undefined"
}
},
"f7da7040be7b": {
"error": "Cannot read properties of undefined (reading 'replace')",
"items": [],
"loading": false,
"refreshing": false
}
},
"recording": {
@@ -114,20 +154,19 @@
{
"id": "load-settled",
"observation": {
"sender": ["65696d9af446"],
"sender": ["8511d41d7490"],
"payloads": ["038bb64a38ce"],
"settlements": {
"mount": "eb79a9b3682a",
"load-0": "eb79a9b3682a"
},
"state": "f7da7040be7b",
"state": "d57ec76a49a3",
"effects": [
"39f99cf479f0",
"609f32a21704",
"1f4eeb3dcff1",
"77882f3fe361",
"5ac1816a09df",
"411aee2eccd9"
"2ee5e836afb7",
"6d7869e6f6ea",
"88d78bf42794"
]
}
}
+9 -8
View File
@@ -11557,15 +11557,16 @@
"result": [
{
"id": 1,
"actionName": "review_requested",
"targetType": "Issue",
"target": {
"id": "gid://1",
"iid": 4,
"title": "A GitLab todo",
"webUrl": "",
"state": "opened",
"updatedAt": "2020-01-01T00:00:00.000Z"
}
"targetIid": 4,
"targetTitle": "A GitLab todo",
"targetUrl": "https://gitlab.example.com/group/project/-/issues/4",
"projectPath": "group/project",
"authorUsername": "octocat",
"authorAvatarUrl": "",
"updatedAt": "2020-01-01T00:00:00.000Z",
"state": "pending"
}
]
}