18. HTMLを先行利用せんこうりようする実装段階じっそうだんかい

2026-09-07の追加指示ついかしじにより、Doc入力にゅうりょくからHTMLまでを先行せんこうして利用可能りようかのうにする。基準きじゅんとして提示ていじされた933f0bbへもどさず、既存きそんのlower::document・labels::check・plain_text・source printerを再利用さいりようする。Mathのarena・shape・lower・codecは、進行中しんこうちゅう表示用ひょうじよう実装じっそう利用りようする。source printerをHTML rendererへえない。

実装依存じっそういぞん

正式せいしきタスク段階だんかい成果物せいかぶつ終了範囲しゅうりょうはんい
T22H0Docようmarkup、文書ぶんしょcheck・prepare、URI・asset、renderer、17しょうかた・codec・制約せいやく具体化ぐたいかし、対応たいおうする公開こうかいAPIの実装前提じっそうぜんていそろえる。
T23H1既存きそんのparser・lower・labelsを使つかうDoc単独たんどくHTML、検査済けんさずみpage・asset解決かいけつ、markup・doc-html、安全あんぜんなserializer、suiteとCLIを実際じっさい利用りようする入口いりぐち
T24H2Math表示用ひょうじよう構造こうぞうとbinding、独立どくりつMathML、型付かたつきTeX、Node host KaTeX、しきごとのfallbackを、じつNEPL3入力にゅうりょくから接続せつぞくする。
T25H3純粋じゅんすいTEA、共通きょうつうWasm、Worker生成せいせい隔離かくりpreview、どうartifactのexportを、Nodeとの比較ひかくと3 browserで検証けんしょうする。

依存いぞんはT22→T23→T24→T25のじゅん成果物せいかぶつ供給きょうきゅうする。ここでの矢印やじるし実装順じっそうじゅんあらわす。design/tasks.jsondepends_onでは、後段こうだん前段ぜんだん参照さんしょうする。T22は先行せんこうfoundation・Doc・MathのじつAPIを検証けんしょうして利用りようするが、T01〜T09の全体完了ぜんたいかんりょうたせない。T23は未対応みたいおうembedを型付かたつきで拒否きょひし、T24でMathの実解決じつかいけつ追加ついかする。からのfragmentで段階だんかいをまたがない。

T10・T11・T13・T15・T17・T18は先行経路せんこうけいろ再利用さいりようして、当初とうしょ全責務ぜんせきむ実装じっそうする。Math evaluate、Circuit、LSP、汎用はんようprovider、4言語げんごUI全体ぜんたい、Pages全受入ぜんうけいれ、T21文書移行ぶんしょいこうのこる。T16はT25と既存きそん最終依存さいしゅういぞん、すべてのrequired受入条件うけいれじょうけん要求ようきゅうする。先行利用せんこうりよう成功せいこうから、既存きそんタスクや受入群全体うけいれぐんぜんたいをpassedにしない。

H0/H1の契約けいやく

Docの既存きそんarenaはひょう・list・page link・relative link・external link・imageなどを保持ほじするが、構造こうぞうproofやCheckedLabelsは完全かんぜんなPreparedArticleではない。文書検査ぶんしょけんさは、表示対象ひょうじたいしょうlanguage・parallel policy、外部がいぶpage・asset・foreign requirementsを明示めいじする。prepareは対象たいしょうdocumentのidentity、全要求ぜんようきゅう解決結果かいけつけっかかた位置いち資源閉包しげんへいほうresource closure照合しょうごうする。backendへ未解決みかいけつslotやhostの任意にんいHTMLをわたさない。

markupは、table・header・cell、ordered・unordered listとstart・checkbox、img・alt・caption、一般いっぱんlinkに必要ひつよう要素ようそ属性ぞくせい内容ないようモデルを、じたかたとしてつ。どうartifactのanchor、page ID、相対そうたいpath、external URI、asset参照さんしょう区別くべつする。危険きけんscheme、path traversal、重複ちょうふくpath、未宣言みせんげんasset、にせdigest、wrong slotを拒否きょひし、I/O権限けんげんはhostにのこす。

Paragraphをのpへ機械変換きかいへんかんせず、ぶんのrunとblockのwrapperを使つかう。Sentenceかん空白くうはく追加ついかしない。Ruby・Anno、Parallel、heading、からひょう、list start、codeの改行かいぎょう画像がぞう代替説明だいたいせつめい保持ほじし、ブラウザparserのtree補正ほせい意味いみわっていないか確認かくにんする。一般いっぱんDocとKaTeXの双方そうほうを、検査済けんさずみmarkupとserializerへとおす。

H2/H3の契約けいやく検証けんしょう

17しょう適用てきようする。数式すうしき正本せいほん構造こうぞうであり、本文ほんぶんのdollar探索たんさく、MathMLからのTeX推測すいそく、source printer文字列もじれつ数式すうしきとして利用りようしない。非結合ひけつごうoperand、負号ふごう累乗るいじょう多文字たもじUnicode記号きごう片側かたがわfence、Doc注記ちゅうき忠実性ちゅうじつせい共通試験きょうつうしけんむすける。表示ひょうじのためにevaluateを実行じっこうしない。

じつ.nepldからHTMLまでのpositive・negative、MathML-only、KaTeX不在ふざい、optional module失敗しっぱい局所失敗きょくしょしっぱい全体ぜんたいStopped、安全性違反あんぜんせいいはん、asset不足ふそく検証けんしょうする。NodeとDOMなしのじつWorkerで、固定版こていばん入力にゅうりょく設定せっていおな正準せいじゅんmarkup・manifestを生成せいせいすることを比較ひかくする。

Chromium・Firefox・WebKitで、script禁止きんしかつsame-origin権限けんげんなしのpreview、CSP・CORS・font・root path、ふる返信へんしん拒否きょひ停止ていしとepoch、どうartifactのexportを実行じっこうする。みHTMLのJavaScript無効表示むこうひょうじ、offline bundle、zoom・せまはば印刷いんさつ・アクセシビリティtreeを確認かくにんし、DOMの存在そんざいだけを視覚組版しかくくみはん成功せいこうにしない。WebKit自動試験じどうしけんとSafari・iOSの実機確認じっきかくにん区別くべつする。

各段階かくだんかいは、じつAPI・command・source・spec・target・ログ・独立どくりつレビューと未検証範囲みけんしょうはんい記録きろくする。既存きそんbootstrap、Doc source printer、source・Origin、予算よさん、no_std・WASIの回帰かいき維持いじする。ローカルでの成功せいこうは、Pages公開こうかい証拠しょうこではない。

正式文書せいしきぶんしょのDoc移行いこう

T23で必要ひつよう表現ひょうげん使つかえるページから、T21の棚卸たなおろし・変換へんかんすすめる。数式すうしきふくむspecは、T24の実生成経路じつせいせいけいろ使用しようする。T21の完了依存かんりょういぞんをT24・T19へ接続せつぞくし、Math評価ひょうか・Circuit全体ぜんたい完成待かんせいまちでDoc正本化せいほんかおくらせない。ページ単位たんい意味いみ・リンク・安定あんていID・生成物対応せいせいぶつたいおうとbootstrapの条件じょうけんは、16しょうのまま維持いじする。README・AGENTSなどのMarkdown入口いりぐちは、必要ひつようおうじて.nepld正本せいほんから生成せいせいし、二重にじゅう手書てが保守ほしゅをしない。