Go Straightforward Web Application Development.

I'm Ryota Murakami who lives in Tokyo. Currently working as a freelance React/Node/TypeScript developer. Here is my independent OSS organization.

Personal photo showcasing development work
Creative coding project snapshot
Technology workspace environment
Software engineering collaboration
Programming achievement highlight

GitHub Activity

  1. @ryota-murakami ryota-murakami opened laststance/lain#14 · February 15, 2026 12:53
    feat(p2): Core CRUD, E2E infra, and dev tooling #14

    Summary

    • Wire all 22 UI components to Raindrop.io API via RTK Query CRUD hooks (useRaindropsCrud, useCollectionsCrud, useTagsCrud, useUrlSuggest)
    • A…
    +7,752 -1,245
    13 comments
  2. @ryota-murakami ryota-murakami created a branch in laststance/lain · February 15, 2026 20:53
  3. @ryota-murakami ryota-murakami reopened an issue in laststance/lain · February 15, 2026 12:32
    chore: Enable Redux DevTools in Electron dev environment #13
    ## Parent Issue Closes sub-task of #2 ## Summary Dev 環境で Redux DevTools を使用できるよう Electron に導入する。RTK Query のキャッシュ状態、slice の変更、dispatched actions をリア…
    2 comments
  4. @ryota-murakami ryota-murakami closed an issue in laststance/lain · February 15, 2026 12:30
    chore: Enable Redux DevTools in Electron dev environment #13
    ## Parent Issue Closes sub-task of #2 ## Summary Dev 環境で Redux DevTools を使用できるよう Electron に導入する。RTK Query のキャッシュ状態、slice の変更、dispatched actions をリア…
    2 comments
  5. @ryota-murakami ryota-murakami commented on laststance/lain#13 · February 15, 2026 12:30
    Closing as not planned — all npm packages for Electron DevTools extensions are broken on Electron 37+. Investigated packages: - `electron-devtools-…
  6. @ryota-murakami ryota-murakami closed an issue in laststance/lain · February 15, 2026 12:30
    chore: Introduce knip for dead code detection and cleanup #11
    ## Parent Issue Closes sub-task of #2 ## Summary [knip](https://knip.dev/) を導入して未使用ファイル・未使用 export・未使用 dependency を検出・削除する。`src/components/example.…
    1 comment
  7. @ryota-murakami ryota-murakami commented on laststance/lain#11 · February 15, 2026 12:30
    Completed in commit `fe2f207` — `chore: introduce knip for dead code detection and CI enforcement` Changes: - Installed knip, created `knip.config.…
  8. @ryota-murakami ryota-murakami closed an issue in laststance/lain · February 15, 2026 12:30
    refactor: Consolidate ThemeProvider & AuthProvider into Redux #10
    ## Parent Issue Closes sub-task of #2 ## Summary `ThemeProvider` (React Context + useState + useEffect) と `AuthContext` を Redux に集約する。Theme の DOM 操…
    1 comment
  9. @ryota-murakami ryota-murakami commented on laststance/lain#10 · February 15, 2026 12:30
    Completed in commits: - `984603a` — `refactor(react): move non-rendering logic out of React into Redux` Changes: - ThemeProvider + AuthProvider → R…
  10. @ryota-murakami ryota-murakami deleted branch refs/heads/fix/e2e-cascade-delete-projectinfo in laststance/gitbox · February 15, 2026 14:45

    Updated Feb 15

  11. @ryota-murakami ryota-murakami merged laststance/gitbox#121 · February 15, 2026 06:45
    fix(e2e): restore projectinfo rows after CASCADE DELETE in resetRepoCards() #121

    Summary

    • Fix resetRepoCards() to restore projectinfo rows that are silently deleted by PostgreSQL's ON DELETE CASCADE when repocards are deleted
    • Pr…
    +201 -284
    8 comments
  12. @ryota-murakami ryota-murakami merged laststance/gitbox#120 · February 15, 2026 06:45
    refactor: remove theme section from Settings page #120

    Summary

    • Remove theme selection grid from Settings page (14 themes + System button) — duplicated sidebar ThemeToggle functionality
    • Remove "Change T…
    +149 -284
    8 comments
  13. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 15, 2026 14:45
    2 commits to main
    • @ryota-murakami 245d655
      refactor(settings): remove theme section from Settings page
    • @ryota-murakami 205b55c
      fix(e2e): restore projectinfo rows after CASCADE DELETE in resetRepoC…
    • 2 more commits »
  14. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 15, 2026 14:32
    1 commit to fix/e2e-cascade-delete-projectinfo
    • @ryota-murakami 00272d7
      fix: actively dismiss stale dropdown before theme selection
  15. @ryota-murakami ryota-murakami commented on laststance/lain#13 · February 15, 2026 06:30
    ## 調査結果 (2026-02-15) ### 試したこと 1. **`electron-devtools-installer` v4.0.0** — インストール成功するが Electron 40 で DevTools タブが表示されない - 原因: deprecated API (`se…
  16. @ryota-murakami ryota-murakami opened laststance/gitbox#121 · February 15, 2026 06:17
    fix(e2e): restore projectinfo rows after CASCADE DELETE in resetRepoCards() #121

    Summary

    • Fix resetRepoCards() to restore projectinfo rows that are silently deleted by PostgreSQL's ON DELETE CASCADE when repocards are deleted
    • Pr…
    +201 -284
    8 comments
  17. @ryota-murakami ryota-murakami created a branch in laststance/gitbox · February 15, 2026 14:17
  18. @ryota-murakami ryota-murakami closed an issue in laststance/lain · February 15, 2026 05:09
    chore: Add CodeRabbit configuration (.coderabbit.yaml) #9
    ## Parent Issue Closes sub-task of #2 ## Summary CodeRabbit の設定ファイル `.coderabbit.yaml` をリポジトリルートに作成する。 ## Background PR レビュー自動化のため CodeRabbit を導入済み…
    1 comment
  19. @ryota-murakami ryota-murakami commented on laststance/lain#9 · February 15, 2026 05:09
    Completed in 1c87876. CodeRabbit configuration added with project-specific path instructions, security rules for Electron, and knowledge base integ…
  20. @ryota-murakami ryota-murakami starred obra/superpowers · February 15, 2026 05:02

    An agentic skills framework & software development methodology that works.

    Shell 52.1k Updated Feb 12

  21. @ryota-murakami ryota-murakami opened laststance/gitbox#120 · February 15, 2026 04:57
    refactor: remove theme section from Settings page #120

    Summary

    • Remove theme selection grid from Settings page (14 themes + System button) — duplicated sidebar ThemeToggle functionality
    • Remove "Change T…
    +149 -284
    8 comments
  22. @ryota-murakami ryota-murakami created a branch in laststance/gitbox · February 15, 2026 12:57
  23. @ryota-murakami ryota-murakami opened an issue in laststance/lain · February 15, 2026 04:50
    chore: Enable Redux DevTools in Electron dev environment #13
    ## Parent Issue Closes sub-task of #2 ## Summary Dev 環境で Redux DevTools を使用できるよう Electron に導入する。RTK Query のキャッシュ状態、slice の変更、dispatched actions をリア…
    2 comments
  24. @ryota-murakami ryota-murakami opened an issue in laststance/lain · February 15, 2026 04:48
    test: Build SPEC.md E2E coverage measurement methodology #12
    ## Parent Issue Closes sub-task of #2 ## Summary `SPEC.md` に記載されている全機能/表示要件のうち、現在 E2E テストで網羅されている割合を定量的に算出する手法を構築する。 ## Current State ### SPEC.md R…
  25. @ryota-murakami ryota-murakami opened an issue in laststance/lain · February 15, 2026 04:48
    chore: Introduce knip for dead code detection and cleanup #11
    ## Parent Issue Closes sub-task of #2 ## Summary [knip](https://knip.dev/) を導入して未使用ファイル・未使用 export・未使用 dependency を検出・削除する。`src/components/example.…
    1 comment
  26. @ryota-murakami ryota-murakami opened an issue in laststance/lain · February 15, 2026 04:48
    refactor: Consolidate ThemeProvider & AuthProvider into Redux #10
    ## Parent Issue Closes sub-task of #2 ## Summary `ThemeProvider` (React Context + useState + useEffect) と `AuthContext` を Redux に集約する。Theme の DOM 操…
    1 comment
  27. @ryota-murakami ryota-murakami opened an issue in laststance/lain · February 15, 2026 04:48
    chore: Add CodeRabbit configuration (.coderabbit.yaml) #9
    ## Parent Issue Closes sub-task of #2 ## Summary CodeRabbit の設定ファイル `.coderabbit.yaml` をリポジトリルートに作成する。 ## Background PR レビュー自動化のため CodeRabbit を導入済み…
    1 comment
  28. @ryota-murakami ryota-murakami commented on laststance/laststance.io#1573 · February 15, 2026 03:02
    ## 補足: 追加リサーチ結果 ### バンドルサイズ詳細(修正) | ツール | バンドルサイズ (gzip) | 備考 | |--------|---------------------|------| | **Sandpack** | **~130-150 KB** (ラッパーのみ) |…
  29. @ryota-murakami ryota-murakami opened an issue in laststance/laststance.io · February 15, 2026 03:02
    MDX ブログポストにインタラクティブなコードプレイグラウンドを導入する #1573
    ## 概要 react.dev のように、ブログ記事内でインタラクティブに動作するUIコンポーネントとコードエディタを表示したい。現在の laststance.io は **Next.js 16 + @next/mdx + remark-gfm + @mapbox/rehype-prism**…
    1 comment
  30. @ryota-murakami ryota-murakami pushed to laststance/skills · February 15, 2026 02:06
    1 commit to main
    • @ryota-murakami f48dc1b
      feat(troubleshoot): add Serena think checkpoints, verification phase,…
  31. @ryota-murakami ryota-murakami closed an issue in laststance/lain · February 14, 2026 15:51
    P1: Foundation + Test Infrastructure #1
    ## P1: Foundation + Test Infrastructure > Redux Toolkit + RTK Query + Axios interceptors + テスト基盤構築。全後続フェーズの土台。 **Ref:** [SPEC.md §3 State Managemen…
    1 comment
  32. @ryota-murakami ryota-murakami commented on laststance/lain#1 · February 14, 2026 15:51
    ## ✅ P1: Foundation + Test Infrastructure — Complete All deliverables shipped across multiple PRs and merged to `main`. ### Delivered **Redux Store…
  33. @ryota-murakami ryota-murakami merged laststance/lain#8 · February 14, 2026 14:26
    test: add E2E auth bypass with Playwright smoke tests #8

    Summary

    • Add LAIN_TEST_MODE env var to bypass Raindrop.io OAuth in E2E tests
    • Create electron/test-auth.ts with mock IPC handlers that return authen…
    +121 -10
    1 comment
  34. @ryota-murakami ryota-murakami deleted branch refs/heads/feat/e2e-auth-bypass in laststance/lain · February 14, 2026 22:26

    Updated Feb 14

  35. @ryota-murakami ryota-murakami pushed to laststance/lain · February 14, 2026 22:26
    2 commits to main
  36. @ryota-murakami ryota-murakami pushed to laststance/lain · February 14, 2026 22:23
    1 commit to feat/e2e-auth-bypass
    • @ryota-murakami c7e6b1c
      fix: resolve CI failures and CodeRabbit review findings
  37. @ryota-murakami ryota-murakami starred cesarandreslopez/sidekick-for-claude-max · February 14, 2026 14:13

    Claude Code session monitor w/Kanban Board + AI coding assistant for Max subscribers

    TypeScript 26 Updated Feb 15

  38. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 14, 2026 15:25
    1 commit to main
    • @ryota-murakami 83f1682
      fix: increase flaky E2E test timeouts for CI reliability
  39. @ryota-murakami ryota-murakami deleted branch refs/heads/feat/maintenance-delete-button in laststance/gitbox · February 14, 2026 14:30

    Updated Feb 14

  40. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 14, 2026 14:30
    2 commits to main
    • @ryota-murakami 2c1cc5c
      docs: add violations section to CLAUDE.md for deployment guidelines
    • @ryota-murakami 51d2962
      feat: add delete button to Maintenance Mode repo cards
    • 3 more commits »
  41. @ryota-murakami ryota-murakami merged laststance/gitbox#119 · February 14, 2026 06:30
    feat: add delete button to Maintenance Mode repo cards #119

    Summary

    • Add permanent deletion option for maintenance items (addresses PRD gap F03)
    • Server action deleteMaintenanceItem with auth + rate limiting (b…
    +270 -5
    10 comments
  42. @ryota-murakami ryota-murakami opened laststance/lain#8 · February 14, 2026 06:17
    test: add E2E auth bypass with Playwright smoke tests #8

    Summary

    • Add LAIN_TEST_MODE env var to bypass Raindrop.io OAuth in E2E tests
    • Create electron/test-auth.ts with mock IPC handlers that return authen…
    +121 -10
    1 comment
  43. @ryota-murakami ryota-murakami created a branch in laststance/lain · February 14, 2026 14:17
  44. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 14, 2026 14:12
    1 commit to feat/maintenance-delete-button
    • @ryota-murakami 06446c9
      fix: increase Slate editor timeouts in flaky e2e tests
  45. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 14, 2026 13:43
    1 commit to feat/maintenance-delete-button
    • @ryota-murakami 1bea645
      fix: resolve CodeRabbit review findings
  46. @ryota-murakami ryota-murakami opened laststance/gitbox#119 · February 14, 2026 05:01
    feat: add delete button to Maintenance Mode repo cards #119

    Summary

    • Add permanent deletion option for maintenance items (addresses PRD gap F03)
    • Server action deleteMaintenanceItem with auth + rate limiting (b…
    +270 -5
    10 comments
  47. @ryota-murakami ryota-murakami created a branch in laststance/gitbox · February 14, 2026 13:01
  48. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 14, 2026 12:07
    1 commit to main
    • @ryota-murakami b83d266
      feat(ui): distinguish symlink and local skills with visual indicators
  49. @ryota-murakami ryota-murakami pushed to laststance/claude-code-marketplace · February 14, 2026 11:59
    1 commit to main
    • @ryota-murakami f9e2234
      chore: remove git-diff plugin
  50. @ryota-murakami ryota-murakami pushed to laststance/claude-code-marketplace · February 14, 2026 11:57
    1 commit to main
    • @ryota-murakami e63851e
      feat: add qa-team plugin with 5-perspective QA Agent Team
  51. @ryota-murakami ryota-murakami pushed to laststance/skills · February 14, 2026 11:01
    1 commit to main
    • @ryota-murakami 9bb0c2b
      feat: add 8 skills (analyze-app, explain, git, load, qa-team, save, t…
  52. @ryota-murakami ryota-murakami pushed to laststance/lain · February 14, 2026 10:22
    2 commits to main
    • @ryota-murakami 94baa89
      refactor: enforce strict React lint rules across all components
    • @ryota-murakami 4d2429b
      ci: add GitHub Actions CI workflow with reusable prepare action
  53. @ryota-murakami ryota-murakami pushed to laststance/lain · February 14, 2026 08:05
    1 commit to main
    • @ryota-murakami ac37867
      chore: update ESLint configuration and dependencies
  54. @ryota-murakami ryota-murakami pushed to laststance/laststance.io · February 14, 2026 07:47
    1 commit to main
    • @ryota-murakami 2e192c3
      fix(mdx): enable gfm tables in article pages
  55. @ryota-murakami ryota-murakami made laststance/lain public · February 13, 2026 23:32

    Raindrop.io desktop client for macOS

    TypeScript Updated Feb 15

  56. @ryota-murakami ryota-murakami pushed to laststance/laststance.io · February 14, 2026 06:29
    1 commit to main
    • @ryota-murakami 22a2e46
      feat(WhatNew): add new article on discontinuing Complete macOS autoco…
  57. @ryota-murakami ryota-murakami pushed to laststance/laststance.io · February 14, 2026 06:15
    1 commit to main
    • @ryota-murakami 9f29ccf
      feat(projects): add new projects and logos to the project list
  58. @ryota-murakami ryota-murakami pushed to ryota-murakami/next-play · February 14, 2026 05:57
    1 commit to main
    • @ryota-murakami 1cca7c6
      fix: correct indentation in Guestbook component form closing tag for …
  59. @ryota-murakami ryota-murakami starred matt1398/claude-devtools · February 13, 2026 21:44

    TypeScript 302 Updated Feb 15

  60. @ryota-murakami ryota-murakami pushed to ryota-murakami/dotfiles · February 14, 2026 04:45
    1 commit to master
    • @ryota-murakami 95fff4a
      [keybindings] clean up and update keybindings across cursor, vscode, …
  61. @ryota-murakami ryota-murakami pushed to ryota-murakami/dotfiles · February 14, 2026 02:12
    1 commit to master
    • @ryota-murakami 846b5e8
      [gitignore] add 'sidecar' to ignore list and ensure 'cmus' is include…
  62. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 14, 2026 02:02
    1 commit to main
    • @ryota-murakami 77ef8f1
      fix(website): update download buttons to direct DMG links for v0.4.1
  63. @ryota-murakami ryota-murakami released v0.4.1 of laststance/skills-desktop · February 13, 2026 17:37

    Bug Fix

    • fix(symlink): Resolve relative readlink targets for production builds
      • Production app incorrectly reported valid symlinks as "broken"
      • Root cause: readlink() returns relative paths (e.g. ..…
    Read more
  64. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 14, 2026 01:30
    1 commit to main
    • @ryota-murakami 6837e44
      fix(symlink): resolve relative readlink targets for production builds
  65. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 14, 2026 01:00
    1 commit to main
    • @ryota-murakami daa6472
      fix: update README with new screenshot for improved clarity
  66. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 13, 2026 23:07
    1 commit to main
    • @ryota-murakami 64e1a90
      docs: add screenshot for README
  67. @ryota-murakami ryota-murakami released v0.4.0 of laststance/skills-desktop · February 13, 2026 14:57

    What's Changed

    • feat(tooltip): Show linked agent names in StatusBadge tooltip
    • feat(sidebar): Expand SourceCard click area to include path and stats
    • feat(sidebar): Add left accent bar highlight for …
    Read more
  68. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 13, 2026 22:49
    1 commit to main
    • @ryota-murakami 807b8d3
      feat(tooltip): show linked agent names in StatusBadge tooltip
  69. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 13, 2026 22:35
    2 commits to main
    • @ryota-murakami 241322a
      feat(sidebar): add left accent bar highlight for active view selection
    • @ryota-murakami b665d21
      feat(sidebar): expand SourceCard click area to include path and stats
  70. @ryota-murakami ryota-murakami starred marcus/sidecar · February 13, 2026 12:45

    Use sidecar next to CLI agents for diffs, file trees, conversation history, and task management with td

    Go 682 Updated Feb 15

  71. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 20:24
    1 commit to main
    • @ryota-murakami 697a206
      fix: restore /boards page by fixing CI migration paths and adding Sen…
  72. @ryota-murakami ryota-murakami deleted branch refs/heads/fix/storybook-full-workflow-focus in laststance/gitbox · February 13, 2026 15:55

    Updated Feb 13

  73. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 15:55
    1 commit to main
    • @ryota-murakami 38ba505
      fix: add explicit focus before clear in TestFullWorkflow storybook te…
  74. @ryota-murakami ryota-murakami merged laststance/gitbox#118 · February 13, 2026 07:55
    fix: storybook TestFullWorkflow focus issue in CI #118

    Summary

    • Fix flaky TestFullWorkflow storybook interaction test that fails in CI with "The element to be cleared could not be focused"
    • Root cause: <…
    +3 -0
    5 comments
  75. @ryota-murakami ryota-murakami created a branch in laststance/gitbox · February 13, 2026 15:32
  76. @ryota-murakami ryota-murakami pushed to laststance/skills · February 13, 2026 15:43
    1 commit to main
    • @ryota-murakami f510d42
      docs: add individual skill install commands to README
  77. @ryota-murakami ryota-murakami pushed to laststance/skills · February 13, 2026 15:41
    1 commit to main
    • @ryota-murakami 09d4f78
      feat: add 5 skills (code-trace, electron-release, gif-analyzer, mento…
  78. @ryota-murakami ryota-murakami opened laststance/gitbox#118 · February 13, 2026 07:32
    fix: storybook TestFullWorkflow focus issue in CI #118

    Summary

    • Fix flaky TestFullWorkflow storybook interaction test that fails in CI with "The element to be cleared could not be focused"
    • Root cause: <…
    +3 -0
    5 comments
  79. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 15:00
    1 commit to main
    • @ryota-murakami f1e2fc0
      feat: add rate limiting on auth and API endpoints (#117)
  80. @ryota-murakami ryota-murakami deleted branch refs/heads/feat/issue-77-rate-limiting in laststance/gitbox · February 13, 2026 15:00

    Updated Feb 13

  81. @ryota-murakami ryota-murakami merged laststance/gitbox#117 · February 13, 2026 07:00
    feat: add rate limiting on auth and API endpoints #117

    Summary

    Closes #77

    Add in-memory sliding-window rate limiting to protect against brute-force enumeration of board IDs, excessive GitHub API consump…

    +622 -13
    15 comments
  82. @ryota-murakami ryota-murakami closed an issue in laststance/gitbox · February 13, 2026 07:00
    Add rate limiting on auth and API endpoints #77
    ## Summary No rate limiting exists on: - OAuth login attempts - Server Action invocations - GitHub API proxy calls While Supabase and GitHub have t…
  83. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 14:47
    1 commit to feat/issue-77-rate-limiting
    • @ryota-murakami 30f6c0f
      fix: add empty identifier guard in checkRateLimit
  84. @ryota-murakami ryota-murakami pushed to laststance/skills · February 13, 2026 14:41
    1 commit to main
    • @ryota-murakami 3624b8c
      feat: add coderabbit-resolver skill
  85. @ryota-murakami ryota-murakami created a branch in laststance/skills · February 13, 2026 14:41
  86. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 14:27
    1 commit to feat/issue-77-rate-limiting
    • @ryota-murakami 04b601d
      fix: address CodeRabbit review findings in rate limiting
  87. @ryota-murakami ryota-murakami opened laststance/gitbox#117 · February 13, 2026 06:00
    feat: add rate limiting on auth and API endpoints #117

    Summary

    Closes #77

    Add in-memory sliding-window rate limiting to protect against brute-force enumeration of board IDs, excessive GitHub API consump…

    +622 -13
    15 comments
  88. @ryota-murakami ryota-murakami created a branch in laststance/gitbox · February 13, 2026 13:59
  89. @ryota-murakami ryota-murakami deleted branch refs/heads/fix/issue-69-reduce-e2e-wait-for-timeout in laststance/gitbox · February 13, 2026 13:22

    Updated Feb 13

  90. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 13:22
    1 commit to main
    • @ryota-murakami a9d0653
      fix(e2e): eliminate waitForTimeout across all E2E tests (#116)
  91. @ryota-murakami ryota-murakami closed an issue in laststance/gitbox · February 13, 2026 05:22
    Reduce waitForTimeout usage in E2E tests (254 occurrences) #69
    ## Summary `waitForTimeout` is the #1 cause of flaky E2E tests. There are **254 occurrences across 23 files**. These hard-coded delays may be too s…
    1 comment
  92. @ryota-murakami ryota-murakami merged laststance/gitbox#116 · February 13, 2026 05:22
    fix(e2e): eliminate waitForTimeout across all E2E tests #116

    Summary

    Closes #69

    • Eliminates ~246 waitForTimeout calls across 22 E2E spec files
    • Replaces with proper Playwright assertion patterns:
      • Hydration waits
    +684 -470
    22 comments
  93. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 13:09
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami 0e62095
      fix(e2e): use consistent selector for remove favorite button
  94. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 12:53
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami 2c3f76b
      fix(e2e): restore waitForTimeout in CDP drag tests
  95. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 12:51
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami 6eb0ca8
      fix(e2e): replace waitForTimeout with polling in note-modal slash com…
  96. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 12:14
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami 9be18db
      fix(e2e): address CodeRabbit review findings in favorites tests
  97. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 12:11
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami 5fb50c3
      fix(e2e): fix search filter assertion in add-repository-pagination
  98. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 11:53
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami f79f760
      fix(e2e): fix add-repository-combobox and sidebar-theme-toggle tests
  99. @ryota-murakami ryota-murakami deleted branch refs/heads/feat/issue-78-security-event-logging in laststance/gitbox · February 13, 2026 11:19

    Updated Feb 13

  100. @ryota-murakami ryota-murakami closed an issue in laststance/gitbox · February 13, 2026 03:19
    Add security event logging (audit log) #78
    ## Summary No specific security event logging exists for: - Failed authentication attempts - Account deletion events - Unusual access patterns (e.g…
  101. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 11:19
    1 commit to main
    • @ryota-murakami 39ab8aa
      feat: add security event logging via Sentry custom events (#78) (#115)
  102. @ryota-murakami ryota-murakami merged laststance/gitbox#115 · February 13, 2026 03:19
    feat: add security event logging via Sentry custom events #115

    Summary

    Closes #78

    Add centralized security event logging using Sentry custom events (no new DB table).

    New module: src/lib/security-events.ts

    • log…
    +92 -0
    5 comments
  103. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 11:18
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami f00642e
      fix(e2e): fix flaky tests in favorites, theme-persistence, and pagina…
  104. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 13, 2026 10:42
    2 commits to main
    • @ryota-murakami abdce23
      test: add broken symlink coverage for symlinkChecker and agentScanner
    • @ryota-murakami e0cb06e
      feat: add typed IPC contract for compile-time channel safety
    • 2 more commits »
  105. @ryota-murakami ryota-murakami deleted branch refs/heads/test/broken-symlink-coverage in laststance/skills-desktop · February 13, 2026 10:40

    Updated Feb 13

  106. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 10:38
    2 commits to main
    • @ryota-murakami 673eeb1
      refactor: migrate server actions to ActionResult<T> discriminated uni…
    • @ryota-murakami c96a727
      fix: remove duplicate Sentry reporting from core functions
    • 2 more commits »
  107. @ryota-murakami ryota-murakami deleted branch refs/heads/feat/typed-ipc-contract in laststance/skills-desktop · February 13, 2026 10:42

    Updated Feb 13

  108. @ryota-murakami ryota-murakami merged laststance/skills-desktop#5 · February 13, 2026 02:42
    feat: typed IPC contract for compile-time channel safety #5

    Summary

    • Add IpcInvokeContract and IpcEventContract types mapping channel -> args -> result
    • Add typedHandle() and typedInvoke() wrappers enforcing …
    +409 -263
    2 comments
  109. @ryota-murakami ryota-murakami closed an issue in laststance/skills-desktop · February 13, 2026 02:42
    Typed IPC contract for ipcMain/ipcRenderer (channel/args/result) #2
    ## Background Currently, IPC channels are used as raw string literals (e.g. `ipcRenderer.invoke('skills:getAll')`). This makes it easy to introduce…
  110. @ryota-murakami ryota-murakami created a branch in laststance/skills-desktop · February 13, 2026 10:32
  111. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 13, 2026 10:40
    2 commits to feat/typed-ipc-contract
    • @ryota-murakami c4020d7
      test: add broken symlink coverage for symlinkChecker and agentScanner
    • @ryota-murakami 8b3280f
      Merge pull request #4 from laststance/test/broken-symlink-coverage
    • 1 more commit »
  112. @ryota-murakami ryota-murakami merged laststance/skills-desktop#4 · February 13, 2026 02:40
    test: add broken symlink test coverage #4

    Summary

    • Add unit tests for symlinkChecker.ts covering valid, broken, and missing symlink states
    • Add unit tests for agentScanner.ts covering skill …
    +571 -0
    2 comments
  113. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 13, 2026 10:40
    2 commits to main
    • @ryota-murakami c4020d7
      test: add broken symlink coverage for symlinkChecker and agentScanner
    • @ryota-murakami 8b3280f
      Merge pull request #4 from laststance/test/broken-symlink-coverage
  114. @ryota-murakami ryota-murakami closed an issue in laststance/skills-desktop · February 13, 2026 02:40
    test: Add E2E test cases for broken symlinks #1
    ## Background During debugging of skill count mismatch bug (left pane showed 23, center panel showed 1), we discovered a testing gap. ### Root Caus…
  115. @ryota-murakami ryota-murakami closed an issue in laststance/gitbox · February 13, 2026 02:38
    Migrate remaining Server Actions to ActionResult<T> pattern #102
    ## Summary PR #100 introduced `ActionResult` discriminated union type and converted `github.ts` and `user-presets.ts`. The remaining Server Action …
  116. @ryota-murakami ryota-murakami merged laststance/gitbox#112 · February 13, 2026 02:38
    refactor: migrate server actions to ActionResult<T> (#102) #112

    Summary

    • Migrate client-consumed server actions from throw-based error handling to ActionResult<T> discriminated union pattern
    • board.ts: Convert cr…
    +394 -224
    10 comments
  117. @ryota-murakami ryota-murakami opened laststance/skills-desktop#5 · February 13, 2026 02:36
    feat: typed IPC contract for compile-time channel safety #5

    Summary

    • Add IpcInvokeContract and IpcEventContract types mapping channel -> args -> result
    • Add typedHandle() and typedInvoke() wrappers enforcing …
    +409 -263
    2 comments
  118. @ryota-murakami ryota-murakami created a branch in laststance/skills-desktop · February 13, 2026 10:36
  119. @ryota-murakami ryota-murakami opened laststance/skills-desktop#4 · February 13, 2026 02:33
    test: add broken symlink test coverage #4

    Summary

    • Add unit tests for symlinkChecker.ts covering valid, broken, and missing symlink states
    • Add unit tests for agentScanner.ts covering skill …
    +571 -0
    2 comments
  120. @ryota-murakami ryota-murakami pushed to laststance/skills-desktop · February 13, 2026 10:33
    1 commit to test/broken-symlink-coverage
    • @ryota-murakami c4020d7
      test: add broken symlink coverage for symlinkChecker and agentScanner
  121. @ryota-murakami ryota-murakami deleted branch refs/heads/test/issue-86-dialog-unit-tests in laststance/gitbox · February 13, 2026 10:28

    Updated Feb 13

  122. @ryota-murakami ryota-murakami merged laststance/gitbox#113 · February 13, 2026 02:28
    test: add unit tests for CommandPalette, DeleteBoardDialog, RenameBoardDialog #113

    Summary

    Closes #86

    • Add 29 unit tests for CommandPalette covering keyboard shortcuts (⌘K open/close, Escape), search filtering, keyboard navigation…
    +1,012 -0
    8 comments
  123. @ryota-murakami ryota-murakami closed an issue in laststance/gitbox · February 13, 2026 02:28
    Add E2E test for CommandPalette and unit tests for missing dialog components #86
    ## Summary Several components have Storybook coverage but lack behavioral tests: ### Missing E2E Tests - **CommandPalette** (Ctrl+K) — Storybook st…
  124. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 10:28
    2 commits to main
    • @ryota-murakami 89e83fa
      test: add unit tests for CommandPalette, DeleteBoardDialog, RenameBoa…
    • @ryota-murakami 6e988f4
      fix: use data-testid for backdrop click test
    • 1 more commit »
  125. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 10:24
    2 commits to refactor/issue-102-action-result-migration
  126. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 10:09
    1 commit to fix/issue-69-reduce-e2e-wait-for-timeout
    • @ryota-murakami 10b4841
      fix: resolve CodeRabbit review findings
  127. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 10:07
    1 commit to test/issue-86-dialog-unit-tests
    • @ryota-murakami 6e988f4
      fix: use data-testid for backdrop click test
  128. @ryota-murakami ryota-murakami deleted branch refs/heads/refactor/issue-74-decompose-maintenance-client in laststance/gitbox · February 13, 2026 10:05

    Updated Feb 13

  129. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 10:05
    2 commits to main
    • @ryota-murakami dc21f75
      refactor: decompose MaintenanceClient into custom hooks (#74)
    • @ryota-murakami 2740b01
      Merge pull request #114 from laststance/refactor/issue-74-decompose-m…
  130. @ryota-murakami ryota-murakami closed an issue in laststance/gitbox · February 13, 2026 02:05
    Decompose MaintenanceClient god component (800 lines, 15+ useState) #74
    ## Summary \`src/app/maintenance/MaintenanceClient.tsx\` is 800 lines with 15+ \`useState\` hooks managing multiple concerns: search, sort, view mo…
  131. @ryota-murakami ryota-murakami merged laststance/gitbox#114 · February 13, 2026 02:05
    refactor: decompose MaintenanceClient into custom hooks #114

    Summary

    Closes #74

    Extract 4 stateful logic clusters from the 723-line MaintenanceClient god component into focused custom hooks:

    • useMaintenanceVi…
    +482 -272
    4 comments
  132. @ryota-murakami ryota-murakami pushed to ryota-murakami/dotfiles · February 13, 2026 09:56
    1 commit to master
    • @ryota-murakami 48a0bac
      [settings] update VSCode and Windsurf settings for improved functiona…
  133. @ryota-murakami ryota-murakami pushed to laststance/gitbox · February 13, 2026 09:49
    1 commit to refactor/issue-102-action-result-migration
    • @ryota-murakami c96a727
      fix: remove duplicate Sentry reporting from core functions
  134. @ryota-murakami ryota-murakami opened laststance/gitbox#116 · February 13, 2026 01:30
    fix(e2e): eliminate waitForTimeout across all E2E tests #116

    Summary

    Closes #69

    • Eliminates ~246 waitForTimeout calls across 22 E2E spec files
    • Replaces with proper Playwright assertion patterns:
      • Hydration waits
    +684 -470
    22 comments
  135. @ryota-murakami ryota-murakami created a branch in laststance/gitbox · February 13, 2026 09:30
  136. @ryota-murakami ryota-murakami opened laststance/gitbox#115 · February 13, 2026 01:15
    feat: add security event logging via Sentry custom events #115

    Summary

    Closes #78

    Add centralized security event logging using Sentry custom events (no new DB table).

    New module: src/lib/security-events.ts

    • log…
    +92 -0
    5 comments
  137. @ryota-murakami ryota-murakami created a branch in laststance/gitbox · February 13, 2026 09:15