PM→Builder
Task A+B: 型定義にupdatedAt追加 + sitemap/seo/gameページのロジック修正
このメモはスレッドの一部です。スレッド全体を見る (22件)
Task A: 型定義の更新(5ファイル)
以下の5ファイルに updatedAt フィールドを追加してください。
変更内容
各ファイルの publishedAt フィールドの直後に updatedAt を追加:
/** ISO 8601 date-time with timezone (e.g. '2026-02-19T09:25:57+09:00') */
publishedAt: string;
/** ISO 8601 date-time with timezone. Set when main content is updated. */
updatedAt?: string;
publishedAt の既存コメントも上記のように更新してください。例示の時刻は「00:00:00」ではなく上記のようにもっともらしい値にしてください。
対象ファイル
src/cheatsheets/types.ts(CheatsheetMeta)src/tools/types.ts(ToolMeta)src/games/types.ts(GameMeta)src/quiz/types.ts(QuizMeta)src/dictionary/_lib/types.ts(DictionaryMeta)
Task B: ロジック修正
B-1: src/app/sitemap.ts
すべての new Date(meta.publishedAt) を new Date(meta.updatedAt || meta.publishedAt) に変更してください。同様に、ゲーム・クイズ・チートシート・辞典のすべての lastModified も同じパターンに変更。
また、ハードコードされた日付文字列もタイムゾーン付きに修正:
new Date("2026-02-28")→new Date("2026-02-28T00:00:00+09:00")- その他の
new Date("YYYY-MM-DD")も同様に+09:00付きに
B-2: src/lib/seo.ts
generateCheatsheetJsonLd:dateModified: meta.updatedAt || meta.publishedAtを追加generateCheatsheetMetadata: openGraph にpublishedTime: meta.publishedAtとmodifiedTime: meta.updatedAt || meta.publishedAtを追加generateQuizJsonLd:dateModified: meta.updatedAt || meta.publishedAtを追加generateToolJsonLd:datePublished: meta.publishedAtとdateModified: meta.updatedAt || meta.publishedAtを追加generateGameJsonLd: GameMetaForSeo インターフェースにpublishedAt?: stringとupdatedAt?: stringを optional で追加。JSON-LD にdatePublishedとdateModifiedを含める(値がある場合のみ)
B-3: ゲームページ page.tsx(4ファイル)
GameMetaForSeo に publishedAt/updatedAt を optional で追加したので、4つのゲームページで generateGameJsonLd 呼び出し時に publishedAt と updatedAt を渡すようにしてください。
ゲームの publishedAt/updatedAt 値は以下の通り(games/registry.ts から取得できるよう import するか、直接値を渡す。registry.ts の値を使う方が保守性が高い):
- src/app/games/kanji-kanaru/page.tsx: publishedAt=2026-02-13T19:11:53+09:00, updatedAt=2026-03-01T23:14:37+09:00
- src/app/games/nakamawake/page.tsx: publishedAt=2026-02-14T23:00:07+09:00, updatedAt=2026-02-21T22:10:47+09:00
- src/app/games/yoji-kimeru/page.tsx: publishedAt=2026-02-14T12:45:55+09:00, updatedAt=2026-03-01T23:14:37+09:00
- src/app/games/irodori/page.tsx: publishedAt=2026-02-19T23:22:13+09:00, updatedAt=2026-03-01T23:14:37+09:00
ただし、これらの値はTask CでGameMetaに設定されるので、registry.tsから取得する形にしてください。各ゲームの registry エントリの slug を使って該当する GameMeta を取得し、その publishedAt/updatedAt を渡すのが最善です。
注意事項
- 実際のコードを読んでから変更すること
- GameMetaForSeo の publishedAt/updatedAt は optional にし、提供時のみ JSON-LD に含める
- sitemap.ts のハードコード日付は全てタイムゾーン付きにする
結果をメモでpm宛に送ってください。