test(mobile): record real provider rows in the smart-search and paste fixtures

The smart-search and paste-lookup scenarios carried hand-written stubs, not
rows any handler can build: Linear issues of `{ id }` alone, GitHub items of
`{ number, title }`, and a GitLab item keyed by `iid`, a member neither work-item
type declares. Every one of them omits members the host's own types declare
non-optional and mobile then reads with no guard, so the corpus was evidence for
a requirement it could never have justified.

The rows are now the shapes the corpus already uses elsewhere (`tk-list-linear`,
`tk-provider-load`, `tk-list-gitlab-items`), checked member for member against
LinearIssue (src/shared/linear/issue-types.ts:3), GitHubWorkItem
(src/shared/github/work-item-types.ts:17) and GitLabWorkItem
(src/shared/gitlab-types.ts:165).

No schema moves in this commit. It records what main renders for a real row, so
the requirement that follows can be read against main's own behaviour rather
than against a stub.

Claude-Session: https://claude.ai/code/session_01JNnE9qzUZMMnqpZWCqM3nb
This commit is contained in:
Jinwoo-H
2026-09-17 02:13:23 -04:00
parent ed85c5cd8b
commit 6763ff12e9
+96 -10
View File
@@ -6187,8 +6187,15 @@
"result": {
"items": [
{
"id": "issue:1",
"type": "issue",
"number": 1,
"title": "one"
"title": "one",
"state": "open",
"url": "",
"labels": [],
"updatedAt": "2020-01-01T00:00:00.000Z",
"author": null
}
]
}
@@ -6215,8 +6222,15 @@
"result": {
"items": [
{
"iid": 2,
"title": "two"
"id": "issue:2",
"type": "issue",
"number": 2,
"title": "two",
"state": "opened",
"url": "",
"labels": [],
"updatedAt": "2020-01-01T00:00:00.000Z",
"author": null
}
],
"error": {
@@ -6245,7 +6259,24 @@
"result": {
"items": [
{
"id": "issue-1"
"id": "issue-1",
"identifier": "ENG-1",
"title": "A searched issue",
"url": "",
"state": {
"name": "Todo",
"type": "unstarted",
"color": "#000"
},
"team": {
"id": "team-1",
"key": "ENG",
"name": "Engineering"
},
"labels": [],
"priority": 0,
"updatedAt": "2020-01-01T00:00:00.000Z",
"workspaceId": "linear-workspace"
}
]
}
@@ -6296,7 +6327,24 @@
"ok": true,
"result": [
{
"id": "issue-3"
"id": "issue-3",
"identifier": "ENG-3",
"title": "An assigned issue",
"url": "",
"state": {
"name": "In Progress",
"type": "started",
"color": "#111"
},
"team": {
"id": "team-1",
"key": "ENG",
"name": "Engineering"
},
"labels": [],
"priority": 2,
"updatedAt": "2020-01-02T00:00:00.000Z",
"workspaceId": "linear-workspace"
}
]
}
@@ -6335,7 +6383,24 @@
"ok": true,
"result": [
{
"id": "issue-2"
"id": "issue-2",
"identifier": "ENG-2",
"title": "An assigned issue",
"url": "",
"state": {
"name": "Todo",
"type": "unstarted",
"color": "#000"
},
"team": {
"id": "team-1",
"key": "ENG",
"name": "Engineering"
},
"labels": [],
"priority": 0,
"updatedAt": "2020-01-01T00:00:00.000Z",
"workspaceId": "linear-workspace"
}
]
}
@@ -6432,8 +6497,15 @@
"reply": {
"ok": true,
"result": {
"id": "issue:12",
"type": "issue",
"number": 12,
"title": "twelve"
"title": "twelve",
"state": "open",
"url": "",
"labels": [],
"updatedAt": "2020-01-01T00:00:00.000Z",
"author": null
}
}
},
@@ -6456,8 +6528,15 @@
"reply": {
"ok": true,
"result": {
"id": "issue:12",
"type": "issue",
"number": 12,
"title": "twelve"
"title": "twelve",
"state": "open",
"url": "",
"labels": [],
"updatedAt": "2020-01-01T00:00:00.000Z",
"author": null
}
}
},
@@ -6480,8 +6559,15 @@
"reply": {
"ok": true,
"result": {
"iid": 7,
"title": "seven"
"id": "issue:7",
"type": "issue",
"number": 7,
"title": "seven",
"state": "opened",
"url": "",
"labels": [],
"updatedAt": "2020-01-01T00:00:00.000Z",
"author": null
}
}
},