FACTUAL ACTIVITY RECORD · 実際の作業をもとにした活動記録
日英6画面の静的コーポレートサイトを実装する
型付きコンテンツと共有部品を用い、表示経路、公開境界、静的出力の検査まで一体化する
目的
Home、Privacy、Termsの掲載内容とvisual designは確定していたが、既存サイトは旧いplaceholderのままで、文言、画面構成、公開範囲、locale付き経路が一致していなかった。新しい情報を補わず、確定済みの入力を動く静的サイトへ置き換える必要があった。
日本語と英語の3ページを直接参照できる形にしながら、AI Talentと人間の責任境界、現在提供していないもの、法務文書を誤認なく表示することを目指した。CMS、account、server endpoint、tracking、追加pageは対象に含めなかった。
実装
site content投影にlocale、page kind、共通文言、10名のAI Talent profile、PrivacyとTermsのsectionを型付きデータとして集約した。Homeとlegal pageは共有componentで描画し、各localeのroute fileはlocaleとpage kindだけを渡す薄いwrapperにした。
- 日本語と英語それぞれにHome、Privacy、Termsを用意し、合計6つのcontent URLへ固定した。
- localeを持たないrootは日本語Homeへのredirect-only entryとし、独立した本文、canonical、sitemap entryを持たせなかった。
- browser language、Cookie、localStorage、query parameterによるlocale保持は追加しなかった。
HomeではHero、Wirohについて、AI Talent、現在の活動と提供範囲を順に構成した。AI Talentは役割を持つAI personaであって実在人物や人間の従業員ではないこと、portraitはAI生成imageであること、重要な判断と最終責任は人間の事業主が担うことを表示した。productやcreative workをこのsiteではまだ個別提供・公開していない範囲も明記した。
shared header、footer、locale selector、Home、legal rendererを整え、mobile menuにはaccessible name、expanded state、Escape close、focus return、keyboard orderを実装した。legal pageはclient-side menuを持たない静的構成とし、portraitは周辺のtextで意味が伝わる装飾imageとして扱った。
- site build設定でdefault localeを含むlocale prefixを有効にし、content pageだけをsitemapへ含めた。
- redirect documentは即時転送とnoindexを持ち、canonicalを持たないようにした。
- public asset配下にあった内部運用project guideをdocumentationへ移し、sourceとbuild outputの双方で再混入を検出するようにした。
静的site検証を追加し、6つの出力、HTML language、self canonical、日英alternate、default entry、sitemap、redirect、内部link、mobile menu semantics、10 portrait、除外route、旧placeholder、404、robots、security headerを検査した。build後に同じstatic verificationを実行する継続検査も設定した。
図を描画しています…
確認したこと
確認結果
型検査は0 errors、0 warnings、0 hintsで通過し、静的buildも完了した。
static verificationは6つのcontent URL、3つのredirect entry、canonical・alternate・sitemap、除外route、10 portrait、404、robots、security headerを検査して通過した。
初回確認で見つかったpublic asset内の内部project guide、継続検査の不足、旧routeを示すdocumentationは修正され、内部project guideがsourceとbuild outputにないことも検査対象になった。
source確認ではform、analytics、external fetch、Cookie・localStorage保存、追加external service、active data flowは加わっていなかった。
cutoff時点で静的サイト実装と検査は対象へ反映されていた。production deployと実際の公開到達性、最終publication判断、production data flow、portraitのrights・provenanceは未確認だった。
完了とした根拠
6つのlocale付きcontent pageとredirect、共有component、metadata、sitemap、公開asset境界が静的出力として揃い、型検査、build、static verificationの対象へ組み込まれて通過したことを、この実装範囲の完了条件とした。