Skip to content

test(mobile): assert the Details list labels the completion timestamp - #6346

Open
iscekic wants to merge 1 commit into
mainfrom
kwf/explorer-review-detail-in-the-details-key-value-list-the-52c338-ff01
Open

iscekic wants to merge 1 commit into
mainfrom
kwf/explorer-review-detail-in-the-details-key-value-list-the-52c338-ff01

Conversation

@iscekic

@iscekic iscekic commented Sep 19, 2026

Copy link
Copy Markdown
Collaborator

Changelog for users

  • The Details list already shows the "Completed" label beside the completion timestamp, so the reported unlabeled, misaligned row does not reproduce.
  • No user-visible behavior changes ship in this PR.

Changelog for maintainers

  • Rejected the finding: at the reviewed revision the completion-timestamp row already renders a label, so the two-column Details alignment does not collapse.
  • The row's label is the English "Completed" copy, rendered by the shared label/value metadata row.
  • Added a review-detail screen test that asserts the "Completed" label precedes its relative-time value inside the Details list.
  • The test uses the real English catalog and the mocked relative-time helper, and matches the label/value pair rather than a bare label.
  • No production, catalog, or schema change ships; the behavior is guarded by test only.
  • Review the new test first: it tells the Details row apart from the "Completed" status conclusion by the following value, so a copy change on either surface touches this test.
  • Device captures on Android show the Details list with the labeled completion row.

E2E proof

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label (android emulator-5554) — Digest e1-review-detail.log shows 'android.widget.TextView Completed tappable [92,1559][229,1596]' directly above 'android.widget.TextView Just now tappable [873,1559][988,1596]' inside the Details list (label x=92 matches Branch/Created/Started/Cost), so the completion row is labeled and aligned; the completed review was seeded with 'pnpm dev:seed code-reviews:review-list --email e2e-mobile-...-android@example.com --count 5' and its source row reads 'Seed review 0001|completed|t|t' (e1-review-source-row.log); screenshots e1-review-detail.png / e1-recent-reviews-list.png /…

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label (android emulator-5554) — prior/e1-review-detail.png

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label (android emulator-5554)

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label (android emulator-5554) — prior/e1-recent-reviews-list.png

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label — Android emulator-5554: SCENE e1 OK; the Details list shows 'android.widget.TextView Completed tappable [92,1559][229,1596]' with its value 'android.widget.TextView 18 minutes ago tappable [793,1559][988,1596]' in the same row band, aligned with the Created/Started rows (labels x=92, values ending x=988), and the DB source row 'Seed review 0001|completed|t|t|2026-09-19 05:52' (e1-db.log) matches; no UX-DEFECT observed on the review-detail or review-list screens (screenshot e1.png for the visual reviewer).

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label — e2e-mobile-app/e1.png

E2E proof — log excerpts

[e1] review-detail Details list renders the completion-timestamp row with its 'C -> pass :: Android emulator-5554: SCENE e1 OK; the Details list shows 'android.widget.TextView Completed tappable [92,1559][229,1596]' with its value 'android.widget.TextView 18 minutes ago tappable [793,1559][988,1596]' in the same row band, aligned with the Created/Started rows (labels x=92, values ending x=988), and the DB source row 'Seed review 0001|completed|t|t|2026-09-19 05:52' (e1-db.log) matches; no UX-DEFECT observed on the review-detail or review-list screens (screenshot e1.png for the visual reviewer).
/home/igor_kilocode_ai/.local/share/kwf/sections/explorer-review-detail-in-the-details-key-value-list-the-52c338-ff01/e2e-mobile-app/e1-scene-run2.log
android.widget.TextView Completed tappable [851,1006][988,1043]
android.widget.TextView Details tappable [55,1126][1025,1172]
android.widget.TextView Branch tappable [92,1236][180,1273]
android.widget.TextView seed/page-1 → main tappable [725,1236][988,1273]
android.widget.TextView Platform tappable [92,1300][202,1337]
android.widget.TextView GitHub tappable [901,1300][988,1337]
android.widget.TextView Model tappable [92,1365][171,1402]
android.widget.TextView anthropic/claude-sonnet-4.6 tappable [630,1365][988,1402]
android.widget.TextView Created tappable [92,1429][191,1466]
android.widget.TextView 23 minutes ago tappable [793,1429][988,1466]
android.widget.TextView Started tappable [92,1494][185,1531]
android.widget.TextView 21 minutes ago tappable [793,1494][988,1531]
android.widget.TextView Completed tappable [92,1559][229,1596]
android.widget.TextView 18 minutes ago tappable [793,1559][988,1596]
android.widget.TextView Cost tappable [92,1623][150,1660]
android.widget.TextView $0.05 tappable [916,1623][988,1660]
android.widget.TextView Tokens tappable [92,1688][183,1725]
android.widget.TextView 12,000 in / 800 out tappable [752,1688][988,1725]
android.widget.Button Open pull request tappable [55,1808][1025,1924]
android.widget.TextView Open pull request tappable [409,1842][670,1888]
android.view.View Home, tab, 1 of 3 tappable [0,2195][360,2337]
android.widget.TextView HOME tappable [13,2281][347,2320]
android.view.View Agents, tab, 2 of 3 tappable [360,2195][720,2337]
android.widget.TextView AGENTS tappable [373,2281][707,2320]
/home/igor_kilocode_ai/.local/share/kwf/sections/explorer-review-detail-in-the-details-key-value-list-the-52c338-ff01/e2e-mobile-app/e1-db.log
Seed review 0001|completed|t|t|2026-09-19 05:52
Owner request

Explorer finding: review-detail: In the Details key-value list the completion-timestamp row shows only the value '1 minute ago' with an empty label column, so the row is unlabeled and the two-column alignment collapses.

The user-agent explorer found this while using the app like a user.
One finding per item; the explorer never edits product code.

Flow: review-detail
Found on revision: fd04ca1

Repro:

  1. set this state first: a wiped install on a brand-new account
  2. open the app on emulator-5602
  3. reach the screen the capture names (review-detail)
  4. the capture shows the defect named below

Observed: In the Details key-value list the completion-timestamp row shows only the value '1 minute ago' with an empty label column, so the row is unlabeled and the two-column alignment collapses.
Expected: the screen renders without this defect

Evidence (from the device run):

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label (android emulator-5554) — Digest e1-review-detail.log shows 'android.widget.TextView Completed tappable [92,1559][229,1596]' directly above 'android.widget.TextView Just now tappable [873,1559][988,1596]' inside the Details list (label x=92 matches Branch/Created/Started/Cost), so the completion row is labeled and aligned; the completed review was seeded with 'pnpm dev:seed code-reviews:review-list --email e2e-mobile-...-android@example.com --count 5' and its source row reads 'Seed review 0001|completed|t|t' (e1-review-source-row.log); screenshots e1-review-detail.png / e1-recent-reviews-list.png /…

[e1] review-detail Details list renders the completion-timestamp row with its 'Completed' label (android emulator-5554) — e1-code-reviewer.png

Follow-ups (not changed here)

  • not proved live: Observed: In the Details key-value list the completion-timestamp row shows only the value '1 minute ago' with an empty label column, so the row is unlabeled and the two-column alignment collapses. Expected: the screen renders without this defect (no capture cited it)

Open findings (not fixed here)

  • not proved live: review-detail.png is no longer on the host that took it, so no publish can carry it

Comment thread apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx Outdated
@kilo-code-bot

kilo-code-bot Bot commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

Code Review Summary

Status: No Issues Found | Recommendation: Merge

Executive Summary

The incremental change is test-only and correctly resolves both prior findings on the Details completion-row assertion; no new issues found in the changed lines.

Files Reviewed (1 file)
  • apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx
Previous Review Summary (commit e211c62)

Current summary above is authoritative. Previous snapshots are kept for context only.

Previous review (commit e211c62)

Status: 1 Issue Found | Recommendation: Address before merge

Overview

Severity Count
CRITICAL 0
WARNING 0
SUGGESTION 1
Issue Details (click to expand)

SUGGESTION

File Line Issue
apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx 420 Comment says the Gate status row is followed by Details, but manual_config.agentConfig.gate_threshold is set, so it is followed by Threshold
Files Reviewed (1 file)
  • apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx - 1 issue

Fix these issues in Kilo Cloud


Reviewed by deepseek-v4.1-flash · Input: 0 · Output: 0 · Cached: 0

Review guidance: REVIEW.md from base branch main

@iscekic
iscekic marked this pull request as draft September 19, 2026 06:27
@iscekic
iscekic marked this pull request as ready for review September 19, 2026 06:36
@iscekic

iscekic commented Sep 19, 2026

Copy link
Copy Markdown
Collaborator Author

kilo-review — independent audit of the published diff.

Status: 2 Issues

File Line Issue
apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx 420 The added comment claims the Gate status row's 'Completed' is immediately followed by 'Details', which is not what this fixture renders.
apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx 424 The placement check becomes vacuous if the Details header copy ever changes: indexOf returns -1 and completionRowIndex (>=0) still passes.

@iscekic
iscekic marked this pull request as draft September 19, 2026 06:57
@iscekic
iscekic force-pushed the kwf/explorer-review-detail-in-the-details-key-value-list-the-52c338-ff01 branch from e211c62 to 930c2e7 Compare September 19, 2026 07:16
@iscekic

iscekic commented Sep 19, 2026

Copy link
Copy Markdown
Collaborator Author

bot: Accepted. Pushed 930c2e7 (kwf kwf-fix-review-36a4).

What changed:

  • apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx:420 — accepted: the comment named the wrong row after the Gate status value, and now names the Gate "Threshold" row that this fixture renders.
  • apps/mobile/src/components/code-reviewer/review-detail-screen.mounted.test.tsx:424 — accepted: the test now asserts the Details header exists before comparing, so a header copy change fails instead of passing against "-1".
  • The completion-row test still matches the "Completed" label with the mocked "now" value; its fixture and row lookup are otherwise unchanged.
  • Only the review-detail mounted test changes; no production, catalog, or schema code ships.
  • Risk is low and test-only: review the two changed blocks in the review-detail mounted test first.

@iscekic
iscekic marked this pull request as ready for review September 19, 2026 07:26
@iscekic

iscekic commented Sep 19, 2026

Copy link
Copy Markdown
Collaborator Author

This description names a scenario the proof did not capture:

  • not proved live: Observed: In the Details key-value list the completion-timestamp row shows only the value '1 minute ago' with an empty label column, so the row is unlabeled and the two-column alignment collapses. Expected: the screen renders without this defect (no capture cited it)

A repeated proof run rebuilds the same evidence, so no proof run is dispatched for a named gap. Merging with this gap open is your decision.

@iscekic iscekic added the human-ready The PR is ready for human review. label Sep 19, 2026
@iscekic iscekic self-assigned this Sep 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

human-ready The PR is ready for human review.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant