Skip to content

feat(gui): carry composable Logs filters with responsive controls - #3712

Merged
lidge-jun merged 9 commits into
devfrom
codex/d-3625-logs-filters-01a07265
Sep 5, 2026
Merged

feat(gui): carry composable Logs filters with responsive controls#3712
lidge-jun merged 9 commits into
devfrom
codex/d-3625-logs-filters-01a07265

Conversation

@lidge-jun

@lidge-jun lidge-jun commented Sep 5, 2026

Copy link
Copy Markdown
Owner

Summary

Carry #3625 with its four original SB Yoon commits. Logs combines provider, exact model, time, speed, status, surface and conversation filters over the loaded ring, with counts and one reset action. Refresh reconciles option spelling and permanently clears vanished selections. Reset returns focus to the All radio; time windows use the proxy timestamp and monotonic elapsed time, with a documented older-proxy fallback.

Adds rendered refresh/race/accessibility regressions, responsive containment and dashboard documentation. Original source: 4f79746. The original PR will close after verified dev integration.

Verification

  • Exact head2221aed73: remote Bun1.4.0 / Node22.22.0 typecheck and root suite19,555 pass /15skip /0fail; GUI1,499 pass /0fail; GUI lint/i18n/build and425-page documentation build passed. No local application tests/typecheck ran.
  • Cold React Doctor0.9.11 scan with the actual base available: complete, zero errors/warnings. Hosted React Doctor passed. Independent review passed and both substantive review threads were resolved.
  • Native browser: composition, reset, exact model, empty/offline states, keyboard navigation and responsive widths320–1440. A synthetic proxy clock six hours behind still selects the correct four of eight rows; keyboard reset restores all rows and stable focus.
  • Remaining hosted CI jobs are queued/in progress, not claimed passed. The maintainer explicitly authorized admin integration; actual integrated dev CI remains a final batch-completion requirement.

Desktop composed filters

Proxy-clock time window

Korean mobile filters

Screenshots use synthetic data and the real component/styles in the production-sized shell.

Checklist

  • Scope stays focused and avoids unrelated cleanup.
  • Docs or release notes were updated when needed.
  • Security-sensitive changes were reviewed for secrets, auth, and unsafe defaults. No authentication or credential changes; screenshots contain synthetic data only.

Co-authored-by: SB Yoon 44089734+yansigit@users.noreply.github.com

yansigit and others added 6 commits September 6, 2026 04:48
Preserve the four original #3625 commits and add behavioral regression coverage, scoped responsive containment, and documentation for loaded-ring filter semantics.

Co-authored-by: SB Yoon <44089734+yansigit@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/d-3625-logs-filters-01a07265

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Base automatically changed from codex/d-3628-cursor-schemas-01a07265 to dev September 5, 2026 20:12
@lidge-jun
lidge-jun marked this pull request as ready for review September 5, 2026 20:16
@lidge-jun
lidge-jun requested a review from Ingwannu as a code owner September 5, 2026 20:16
@lidge-jun
lidge-jun marked this pull request as draft September 5, 2026 20:16
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 5, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-05T20:59:01.143281Z 2221aed Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@github-actions

github-actions Bot commented Sep 5, 2026

Copy link
Copy Markdown
Contributor

Deterministic PR hygiene checks passed.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 248177c9ec

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread gui/src/pages/logs-filter-bar.tsx Outdated
@lidge-jun
lidge-jun marked this pull request as ready for review September 5, 2026 20:20

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 248177c9ec

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread gui/src/pages/Logs.tsx Outdated
@github-actions github-actions Bot added the enhancement New feature or request label Sep 5, 2026
@lidge-jun
lidge-jun marked this pull request as draft September 5, 2026 20:31
@lidge-jun

Copy link
Copy Markdown
Owner Author

리뷰 · 우선순위 63 / 80

이 PR은 원본 #3625(SB Yoon)의 composable Logs 필터를 지금 dev 로 다시 싣는 D-lane GUI 캐리입니다. HEAD 6dd23d631 에는 이미 #3508 계열 gui/src/pages/logs-filter.ts 엔진(시간/상태/프로바이더 등)이 있습니다. 이 PR은 그 위에 필터 바 UI·반응형·옵션 링·리셋 포커스·프록시 시계를 붙입니다. 서버 GET /api/logs 봉투에 generatedAt 을 넣고(src/server/management/logs-usage-routes.ts), GUI는 logs-clock.ts 로 브라우저 Date.now 대신 프록시 epoch + monotonic 경과를 씁니다. 원격 시계가 몇 시간 어긋나도 15분 창이 같은 행을 고르게 하려는 목적입니다.

파일 범위가 큽니다(+1528). Logs.tsx / logs-filter-bar.tsx / logs-surface-keydown.ts / i18n 9로케일 / docs-site 가이드·스크린샷 / structure / 테스트 네 파일이 한 묶음입니다. 본문이 말하는 최신 커밋은 reset 후 All 라디오 포커스 유지와 proxy clock 회귀입니다. 원본 #3625는 아직 OPEN이고, 이 캐리가 dev에 검증된 뒤에만 close 하라고 본문이 못 박았습니다. 자식 #3715(Cursor freeform guidance)가 이 브랜치를 베이스로 잡고 있어, 머지 순서가 D Logs 다음 guidance follow-up(또는 guidance를 dev로 분리)입니다.

우선순위 63인 이유다. 사용자에게 보이는 Logs UX이고 D-lane 통합 문서(040/041/042/060)와도 맞지만, A runtime·C OAuth·B catalog 차단 버그는 아닙니다. 체크에 react-doctor fail이 있어 GUI 품질 게이트를 한 번 더 봐야 합니다. types/config 대분할에 무효화될 성격은 아니고, 중복 원본 #3625는 랜딩 후 close-don't-rebase가 맞습니다.

경로/심볼 - gui/src/pages/logs-filter-bar.tsx LogsFilterBar - 프로바이더/모델/시간/속도/상태/서피스/대화 필터 + 매칭 수 + Reset.
경로/심볼 - gui/src/pages/logs-clock.ts logsClockAnchor / logsClockNow - generatedAt+monotonic, legacy fallback.
경로 - src/server/management/logs-usage-routes.ts generatedAt: Date.now() - 봉투 확장(기존 필드 유지).
경로 - gui/src/pages/Logs.tsx - 샘플 동기화, abort/stale이 시계를 오염시키지 않음.
경로 - gui/tests/logs-auto-refresh.test.tsx 등 - skew·reset focus·옵션 casing 회귀.
경로 - docs-site web-dashboard (en/ko 외) + 스크린샷 - generatedAt 문서화.
경로 - 원본 #3625 - 이 PR 검증 전 close 금지(본문); 랜딩 후 landed 주석·close.

메인테이너의 판단이 필요한 지점

  • react-doctor 실패를 머지 차단으로 볼지, 허용하고 후속으로 볼지
  • #3715를 이 브랜치에 묶둘지, Logs와 분리해 dev에 따로 올릴지
  • #3625 close 시점: 이 PR 머지 직후 vs exact-head GUI 스모크 후
  • 서버 generatedAt이 Date.now()인 점이 멀티인스턴스/시계 점프에서 충분한지(문서상 proxy sample)

너의 추천
react-doctor와 GUI 테스트를 초록으로 만든 뒤 dev에 머지하세요. 랜딩 후 #3625Landed via #3712·landed-via-maintainer·close. 이어서 #3715는 가능하면 dev retarget 후 단독 머지. types/config 분할 무효화 시 close-don't-rebase. 미리보기 배포 없음.

이 댓글은 grok-bot이 작성했습니다

@lidge-jun
lidge-jun marked this pull request as ready for review September 5, 2026 20:57
@lidge-jun
lidge-jun merged commit cf6f307 into dev Sep 5, 2026
26 of 27 checks passed
@lidge-jun
lidge-jun deleted the codex/d-3625-logs-filters-01a07265 branch September 5, 2026 20:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants