Skip to content

#323: PID + Source URL columns in samples table and CSV export#328

Merged
rdhyee merged 3 commits into
isamplesorg:mainfrom
rdhyee:feat/323-pid-sourceurl-columns
Jul 10, 2026
Merged

#323: PID + Source URL columns in samples table and CSV export#328
rdhyee merged 3 commits into
isamplesorg:mainfrom
rdhyee:feat/323-pid-sourceurl-columns

Conversation

@rdhyee

@rdhyee rdhyee commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

What this does

Implements @akthom's #323:

  1. PID column in the samples table (was CSV-only) — placed after Label, ellipsized via CSS (ark:/28722/… pids are long) with the full pid on hover, and always complete in the CSV.
  2. Source URL column — a dedicated external link (n2t.net resolver via the existing unit-tested sourceUrl() helper) to each sample's landing page at its source repository, in both the table and the CSV. In the CSV it's appended as the last column so Make it possible to download CSV of Samples Table #312-era consumers keep their column positions.

Design notes:

Codex review (5.6)

approve after one focused browser smoke test … It reuses the existing tested sourceUrl(); attribute values are escaped; CSV ordering remains backward-compatible; anchor clicks no longer trigger row selection; rel="noopener noreferrer" is correct. I found no code blocker.

Smoke test performed (fork preview, fresh isolated browser context)

  • Headers render …|PID|…|Source URL; pid cell ellipsizes with full pid in title; link href=https://n2t.net/<pid>, target=_blank, rel=noopener noreferrer
  • Link click does NOT select/fly the row; normal cell click still does (regression check) ✅
  • Link is keyboard-focusable ✅
  • Narrow viewport (480px): table scrolls inside .table-scroll, body does not overflow (fresh load; matches prod behavior) ✅
  • 0 console errors; 48/48 unit tests ✅

Closes #323.

🤖 Generated with Claude Code

https://claude.ai/code/session_01AjnkWb4HpuLeDbYfzmY3X9

rdhyee and others added 2 commits July 10, 2026 06:35
…port

Andrea's ask (isamplesorg#323):
1. PID column in the samples table (was CSV-only) — placed after Label,
   ellipsized via CSS (pids like ark:/28722/… are long) with the full
   pid on hover and always complete in the CSV.
2. Source URL column — a dedicated external link (n2t.net resolver via
   the existing unit-tested sourceUrl() helper) to the sample's landing
   page at its source repository, in both the table and the CSV
   (appended as the LAST csv column so isamplesorg#312-era consumers keep their
   column positions).

Does not reopen isamplesorg#226 (which removed the label cell's href): the external
link lives in its own honestly-labeled cell, and activateRow now ignores
clicks originating inside an <a> so a link click opens the record
without also selecting/flying the row.

Refs isamplesorg#323.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AjnkWb4HpuLeDbYfzmY3X9
…eview)

Screen-reader users tabbing down the column otherwise hear an
undifferentiated list of identical "record ↗" links.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AjnkWb4HpuLeDbYfzmY3X9
@rdhyee

rdhyee commented Jul 10, 2026

Copy link
Copy Markdown
Contributor Author

Codex 5.6 verdict (independent review): "approve after one focused browser smoke test… reuses the existing tested sourceUrl(); attribute values are escaped; CSV ordering remains backward-compatible; anchor clicks no longer trigger row selection; rel=noopener noreferrer is correct. I found no code blocker." The requested smoke test was performed (see PR body: link-vs-row click, keyboard focus, narrow viewport, fresh context) and its aria-label suggestion applied in 9ed195c.

— rbotyee 🤖

@rdhyee rdhyee added the CC+Codex+LGTM Claude and Codex both reached LGTM; ready for human review label Jul 10, 2026
@rdhyee rdhyee merged commit bc27717 into isamplesorg:main Jul 10, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CC+Codex+LGTM Claude and Codex both reached LGTM; ready for human review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add columns to table and csv download.

1 participant