[codex] Add notes archive - #197
Conversation
|
Important Review skippedAuto incremental reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
📝 WalkthroughWalkthroughブログにノート(Notes)機能を追加した。 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
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. Comment |
Deploying with
|
| Status | Name | Latest Commit | Preview URL | Updated (UTC) |
|---|---|---|---|---|
| ✅ Deployment successful! View logs |
estrilda | 9250ad3 | Commit Preview URL Branch Preview URL |
Jun 21 2026, 05:35 PM |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: eeaf855449
ℹ️ 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".
There was a problem hiding this comment.
Actionable comments posted: 3
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@apps/astro-blog/src/app.css`:
- Line 99: The text-decoration-color property value uses `currentColor` but
Stylelint's `value-keyword-case` rule requires keyword values to be lowercase.
Change `currentColor` to `currentcolor` in the text-decoration-color property on
line 99 to comply with the linting rules.
In `@apps/astro-blog/src/lib/content.ts`:
- Around line 90-103: The normalizeDate function currently returns a fallback
new Date() when an invalid value is provided, which allows invalid publishedAt
values to pass validation silently and use the current build time as the
publication date instead. To fix this, modify the normalizeDate function to
throw an error when an invalid date value is encountered (when the value is not
a Date instance and is not a valid string or number that can be parsed as a
Date), rather than returning a default fallback date. This will enforce that
publishedAt is treated as a truly required field and prevent the published date
from becoming dependent on build time.
- Around line 270-310: The getAllNotes function currently has O(n²) complexity
because it calls getNoteBySlug for each note (which internally calls
getNoteMarkdownFiles() and iterates through all files each time). Refactor
getAllNotes to iterate through the markdown files only once by directly calling
getNoteMarkdownFiles() in getAllNotes, then build the notes array by extracting
meta with extractNoteMeta, filtering by slug matches against the noteMeta array,
and processing each matching file with processMarkdown. This eliminates the
redundant file scanning that happens in the current approach where getNoteBySlug
is called multiple times.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: af0f5e97-d4de-4396-8422-60eacd5c8ee2
📒 Files selected for processing (18)
AGENTS.mdapps/astro-blog/scripts/generate-redirects.mjsapps/astro-blog/src/app.cssapps/astro-blog/src/components/ArchiveListing.astroapps/astro-blog/src/components/EditorialMasthead.astroapps/astro-blog/src/components/NoteCard.astroapps/astro-blog/src/components/NoteDetail.astroapps/astro-blog/src/components/NoteModal.astroapps/astro-blog/src/constants/index.tsapps/astro-blog/src/lib/content.tsapps/astro-blog/src/pages/category/[category]/[...page].astroapps/astro-blog/src/pages/index.astroapps/astro-blog/src/pages/notes/[slug].astroapps/astro-blog/src/pages/notes/index.astroapps/astro-blog/src/pages/post/[slug]/index.astroapps/astro-blog/src/pages/sitemap.xml.tsapps/astro-blog/src/pages/tag/[tag]/[...page].astrocontent/notes/2026-06-21-zone-of-interest.md
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 51835e849c
ℹ️ 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".
Summary
/notes/and individual/notes/[slug]pages.Validation
pnpm --filter astro-blog buildNotes アーカイブ機能を新規追加 -
/notes/一覧ページと/notes/[slug]詳細ページ、URL-backed modal 読み込み機能を実装し、ノート共有と JavaScript 非実装環境対応を実現ノートコンテンツ管理ロジックを構築 -
lib/content.tsにNoteMeta/NoteHTMLインターフェースと、メタ抽出・全件取得・関連ノート算出などの専用関数群を追加記事・ノート本文の typography を統一 -
app.cssに見出し・段落・リスト・テーブル等の共通スタイルを集約し、一元管理を実現ナビゲーション構成を簡潔化 - Editorial Masthead を CATEGORIES / NOTES / ABOUT の 3 リンクに統一し、ユーザビリティを向上
ホームページに Recent Notes セクション追加 - 先頭 4 件のノートカードを表示し、モーダル操作に対応させて記事との並列提示を実現